Matze: Mehrere Werte aus Abfrage in Php Funktion

Beitrag lesen

Hallo,

Ich bekomme nur die emailadresse zurück. Ich brauche aber auch noch name und vorname. Hier verlässt mich mein Wissen, wie müsste ich die Funktion schreiben, so dass ich drei Werte bekomme?

Indem du alle ausgibst statt nur die Mailadresse.

$adresse = "SELECT anrede, name, vorname,  email FROM ma WHERE dienst='ja'";

  
Hier liest schreibst du das Statement um Anrede, Name, Vorname und E-mail abzufragen.  
  

> ~~~php
  

> $adresse=mysql_query($adresse) or die("Abfrage Adresse fehlgeschlagen<br />".mysql_error());  
> 

Ein die() ist übrigens meißt eine schlechte Idee.

while($row = mysql_fetch_assoc($adresse)) {
      $mailadresse =$row['email'];
   }
     return  $mailadresse;

  
Lass mich raten, du kriegst auch noch genau 1 E-mailadresse und zwar genau die letzte.  
  
Ok, Fehleranalyse.  
Eine Funktion kann immer nur 1(!) Wert zurück geben.  
Das können nicht mehrere Variablen, aber ein Array sein.  
  
Du übergibst die Daten aus $row['email'] an $mailadresse.  
Warum übergibst du nicht auch die anderen Werte wenn du sie brauchst?  
  
Diese in ein extra Array zu schreiben wäre aber blödsinn weil sie schon in $row['email'] stehn.  
  
Fehlerbehebung.  
`return $row;`{:.language-php}  
  
Dann kannst du natürlich nicht mehr echo $adresse; verwenden sondern musst die Array-Elemente ansprechen.  
  
Grüße, Matze