2012-03-31 18 views
-4

Recht Jungs haben Probleme mit einem.Kombinieren Sie mehrere Zeilen von MySQL-Array

was ich tun möchte, ist eine Variable, die aus einer MySQL-Abfrage gemacht wird. Das Problem, das ich habe, ist, dass es mehrere Zeilen aus der Abfrage enthalten und sie zu einem kombinieren muss.

zur Zeit ich habe

$lender = mysql_query("Select * from lender where reference = '$reference'"); 
while($lenderrow=mysql_fetch_array($lender)) { 
    $lender1 = $lenderrow["lender"] . " " . $lenderrow["lenderref"] . " " . "£" . $lenderrow["amount"] 
    echo '<br />'; 
} 

also im Grunde ich es dieses Format zu übernehmen wollen, ob es mehrere Zeilen

Blackhor htfhg125h £ 250

Santander htdhfr58hryf £ 541

hat Test 125452asaed2 £ 760

derzeit nur ich das letzte Ergebnis erhalten, wenn ich in der Schleife setzen Sie Ihre echo

+0

So wollen Sie jede Zeile Echo? Oder möchten Sie es zu einem großen String verketten/in einem Array speichern? Beides ist eines der ersten Dinge, die man mit PHP lernt. – knittl

Antwort

0

Sie müssen ein anderes Array verwenden.

<?php 
$lender = mysql_query("Select * from lender where reference = '$reference'"); 
$formated_lender = array(); 
while ($lenderrow=mysql_fetch_array($lender)) { 

    $formated_lender = $lenderrow["lender"] . " " . $lenderrow["lenderref"] . " " . "£" .    
    $lenderrow["amount"]; 
} 

foreach ($formated_lender as $row) 
{ 
    echo $row . '<br />'; 
} 

Oder, wenn Sie würde nur eine Variable ganze Reihe enthält, ersetzen $lende1 = ... durch $lender1 .= ...

+0

Ich denke du meinst '$ lender1. = ...'? – MichaelRushton

+0

@MichaelRushton: Ja, es ist ein Fehler von meinem Teil – BAK

0

nur $ Kreditgebers 1 (offenbar, weil es der letzte Anruf in der while-Schleife)

Beifall im Voraus Echo. Eine Schleife ist nicht auf eine Anweisung beschränkt.

$lender = mysql_query("Select * from lender where reference = '$reference'"); 

while($lenderrow = mysql_fetch_array($lender)) { 
    $result = $lenderrow["lender"] . " " . $lenderrow["lenderref"] . " " . "£" . $lenderrow["amount"]; 
    echo $result . "<br />"; 
} 

Wenn Sie es in einem Array möchten, können Sie eine leere while Schleife verwenden:

$lender = mysql_query("Select * from lender where reference = '$reference'"); 
$results = array(); 

while($results[] = mysql_fetch_array($lender)); // Empty loop 

Auch möchten Sie vielleicht vorsichtig über SQL-Injection, wenn $reference Benutzer bereitgestellte und unescaped .

+0

das würde funktionieren, aber ich muss das Echo einer Variablen zuweisen. damit ich es auf eine andere Form weitergeben kann. – slowie

+0

@slowie: Dann würden Sie das Array verwenden. – Ryan

+0

cheers buddy habe ich stattdessen verwendet $ lender = mysql_query ("Wählen * von Kreditgeber wo Referenz = '$ Verweis'"); $ lender1 = null; while ($ lenderrow = mysql_fetch_assoc ($ kreditgeber)) { $ lender1. = $ Lenderrow ["kreditgeber"]. "". $ lenderrow ["lenderref"]. "". "£". $ lenderrow ["Betrag"]. "
"; } echo substr ($ Farben, 0); – slowie

Verwandte Themen