Meine gespeicherte Prozedur funktioniert nur bei der ersten Iteration. Mein Code:Gespeicherte Prozeduren PHP
// Display Event
$result = mysql_query("select ....",$connection_mercury);
while($row = mysql_fetch_array($result))
{
$id = $row['id'];
$provider = $row['name'];
$details = mysql_query("CALL $my_schema_to_use.getRefId($provider);",$connection);
while($b_row = mysql_fetch_array($details))
{
$details_result = $b_row['age'] . " - " . $b_row['address'];
}
echo "<td>$details_result</td><td>$id</td>
}
Lässt die äußere sagen while-Schleife hat zwei Schleifen wie erwartet. Aber der 'CALL' gibt immer nur einen Wert in der ersten Schleife zurück. Die Variable $details
bleibt für jede Schleife nach der ersten immer leer.
Jeder "innere" sein Schleife Sie overwritting Ihre $ details_result variabel. Jede "äußere" Schleife überschreiben Sie Ihre $ details Variable. –
FYI, mysql_ Funktionen sind veraltet und wurden in neueren Versionen von PHP entfernt, z. http://php.net/manual/en/function.mysql-query.php – wogsland
Ich überschreibe die Variablen, aber ich denke, dass Bit ist ok, da ich den Variablenwert vor dem Überschreiben gedruckt habe. Also ich denke, das Problem ist, dass die Variable $ Details nicht auf der zweiten Iteration der äußeren Schleife gefüllt ist. Was denkst du? Nochmals vielen Dank für die Antwort – por