Sto cercando di eseguire quanto segue.mysqli errore "Comandi fuori sincrono" - perché?
<?php
$db = mysqli_connect("localhost","user","pw") or die("Database error");
mysqli_select_db($db, "database");
$agtid = $_POST['level'];
$sql = sprintf("call agent_hier(%d)", $agtid);
$result = mysqli_query($db, $sql) or exit(mysqli_error($db));
if ($result) {
echo "<table border='1'>
<tr><th>id</th>
<th>name</th>
<th>parent_id</th>
<th>parent_name</th>
<th>level</th>
<th>email</th></tr>";
while ($row = mysqli_fetch_assoc($result))
{
$aid = $row["id"];
$sql2 = "SELECT * FROM members WHERE MEMNO = '$aid'";
$result2 = mysqli_query($db,$sql2) or exit(mysqli_error($db));
while ($newArray = mysqli_fetch_array($result2)) {
$fname = $newArray['FNAME'];
$lname = $newArray['LNAME'];
$mi = $newArray['MI'];
$address = $newArray['ADDRESS'];
$city = $newArray['CITY'];
$state = $newArray['STATE'];
$zip = $newArray['ZIP'];
$kdate = $newArray['KDATE'];
$date = abs(strtotime(date('m/d/Y')) - strtotime(date($kdate)))/(60 * 60 * 24);
}
echo sprintf("<tr><td>%s</td><td>%s</td><td>%s</td><td>%s</td><td>%s</td><td>%s</td></tr>",
$row["id"],$row["name"],
$row["parent_id"],$row["parent_name"],
$row["level"],$row["email"]);
}
echo "</table>";
}
mysqli_free_result($result);
mysqli_close($db);
?>
se rimuovere le linee da:
$aid = $row["agent_id"];
a ....
$date = abs(strtotime(date('m/d/Y')) - strtotime(date($kdate)))/(60 * 60 * 24);
}
tutto funzionerà bene. In caso contrario, ricevo il seguente errore:
Commands out of sync; you can't run this command now
nella ricerca, penso che potrebbe essere dovuto a più query MySQLi funzionare allo stesso tempo, in cui utilizzando mysqli_multi_query
ma per tutti i campioni e dei dati generali in the guide fa non sembra essere applicabile.
Qualche idea?
Dove è la linea '$ date = abs (strtotime (data ('m/d/Y')) - strtotime (data ($ kdate)))/(60 * 60 * 24); } 'nel tuo codice? Hai detto di rimuoverlo, ma non riesco a vederlo lì. – avacariu
@vlad - le mie scuse, risolto – JM4