una tablas reales query mysqli_query multiples multi mostrar injection ejemplos ejemplo ejecutar datos consultas consulta php mysql sql mysqli multi-query

reales - Cómo ejecutar 2 o más consultas SQL en PHP sin unir tablas



sql injection 1'' or ''1'' ''1 (1)

para saber por qué obtiene una pantalla en blanco, debe activar error_reporting, agregue lo siguiente al comienzo de su código php antes que nada:

error_reporting(-1);

También agregue un código para mostrar los errores que pueden ocurrir en MySQL:

if(isset($UserID)) { $users = $con->prepare(" SELECT DISTINCT d.FirstName ,d.LastName ,d.Picture FROM Details WHERE d.UserId = ? "); if (!$users) { echo ''MySQL Connect Error in Query: ('' . $mysqli->errno . '') ''; } $binding = $users->bind_param(''i'', $GetUserId); if (!$binding) { echo ''MySQL Connect Error in Query: ('' . $mysqli->errno . '') ''; } if($users->execute() == false) { echo ''Error: '' . $con->error; } $binding_results = $users->bind_result( $FirstName, $LastName, $Picture ); if (!$binding_results) { echo ''MySQL Connect Error in Query: ('' . $mysqli->errno . '') ''; } $users2 = $con->prepare(" SELECT DISTINCT Foo , Bar , FooBar FROM Bizz WHERE UserId = ? "); if (!$users2) { echo ''MySQL Connect Error in Query: ('' . $mysqli->errno . '') ''; } $binding2 = $users2->bind_param(''i'', $GetUserId); if (!$binding2) { echo ''MySQL Connect Error in Query: ('' . $mysqli->errno . '') ''; } if($users2->execute() == false) { echo ''Error: '' . $con->error; } $binding_results2 = $users2->bind_result( $Foo, $Bar, $FooBar ); if (!$binding_results2) { echo ''MySQL Connect Error in Query: ('' . $mysqli->errno . '') ''; }

Puedo ver un error en su primera consulta. está utilizando d.FirstName donde, como el nombre de la tabla es Detalles

Esta pregunta ya tiene una respuesta aquí:

Para seleccionar datos de 1 tabla, estoy usando el siguiente código:

if(isset($UserID)) { $users = $con->prepare(" SELECT DISTINCT d.FirstName ,d.LastName ,d.Picture FROM Details d WHERE d.UserId = ? "); $users->bind_param(''i'', $GetUserId); $users->execute(); $users->bind_result( $FirstName, $LastName, $Picture ); } else { echo "There is no User ID detected, try to refresh browser."; } while ($users->fetch()) { ?> <div class="grid-group"> <span>Personal Details</span> <div class="grid-column"> <div class="grid-item header">First Name </div> <div class="grid-item header">Last Name </div> <div class="grid-item header">Picture </div> </div> <div class="grid-column"> <div class="grid-item"><?php echo $FirstName; ?></div> <div class="grid-item"><?php echo $LastName; ?></div> <div class="grid-item"><?php echo $Picture; ?></div> </div> </div> <?php } ?>

¿Cómo puedo agregar 1 consulta más para seleccionar algunos datos de otra tabla? Algo como:

SELECT Foo, Bar, FooBar FROM Bizz WHERE UserId = ?

¿Debería usar mysqli_multi_query ? ¿Pero cómo puedo usarlo y bind_result después de bind_result ? No puedo lograr la sintaxis correcta. O hay alguna otra manera?

Tendré que imprimir datos de 2 tablas como esta:

while ($users->fetch()) { ?> <div class="grid-group"> <span>Personal Details</span> <div class="grid-column"> <div class="grid-item header">First Name </div> <div class="grid-item header">Last Name </div> <div class="grid-item header">Picture </div> </div> <div class="grid-column"> <div class="grid-item"><?php echo $FirstName; ?></div> <div class="grid-item"><?php echo $LastName; ?></div> <div class="grid-item"><?php echo $Picture; ?></div> </div> </div> <div class="grid-group"> <span>Foo Bar</span> <div class="grid-column"> <div class="grid-item header">Foo </div> <div class="grid-item header">Bar </div> <div class="grid-item header">FooBar </div> </div> <div class="grid-column"> <div class="grid-item"><?php echo $Foo; ?></div> <div class="grid-item"><?php echo $Bar; ?></div> <div class="grid-item"><?php echo $FooBar; ?></div> </div> </div> <?php } ?>

Por alguna razón, no puedo usar JOINS . ¿Tienes alguna idea?

ACTUALIZAR

Si preparo 2 consultas en seguimiento, tengo una pantalla en blanco:

if(isset($UserID)) { $users = $con->prepare(" SELECT DISTINCT d.FirstName ,d.LastName ,d.Picture FROM Details WHERE d.UserId = ? "); $users->bind_param(''i'', $GetUserId); $users->execute(); $users->bind_result( $FirstName, $LastName, $Picture ); $users2 = $con->prepare(" SELECT DISTINCT Foo , Bar , FooBar FROM Bizz WHERE UserId = ? "); $users2->bind_param(''i'', $GetUserId); $users2->execute(); $users2->bind_result( $Foo, $Bar, $FooBar ); } else { echo "There is no User ID detected, try to refresh browser."; } while ($users->fetch()) { ?> ...

¿Tienes alguna idea?