![]() |
SELFHTML Forumsarchiv |
|
|
Die folgende Nachricht zum Thema stammt von: Paco, 30. 10. 2008, 17:58
Hallo!
Ich habe mal eine sehr simple Frage zum Thema mySQL aber vor allem PHP.
Ich möchte eine Funktion schreiben, um die ID eines Datensatzes herauszufinden, von dem ich einen Wert kenne. Bzw anschaulicher:
Tabelle Benutzer
ID | Name | ...
---+--------+-----
1 | Hans |
2 | Jochen |
3 | Peter |
4 | Klaus |
ich möchte jetzt einfach nur wissen, welche ID Hans hat und dann damit weiterarbeiten. Mein ansatz:
function getIdFromName($name) {
$query = "SELECT id FROM Benutzer WHERE Name = '$name' ";
$result = (mysql_query($query));
$name_id = $result;
return $name_id;
}
Habe glaub generell ein kleines Verständnisproblem was funktionen angeht. Die Variablen sind ja nur innerhalb der Funktion gültig. Wie komme ich an $name_id? Bzw an wen übergibt die Funktion mittels return $name_id?? Geht das grundsätzlich so?
Vielen Dank schonmal,
Paco
Die folgende Nachricht zum Thema stammt von: suit, 30. 10. 2008, 18:10
»» Wie komme ich an $name_id? Bzw an wen übergibt die Funktion mittels return $name_id?? Geht das grundsätzlich so?
return übergibt an die funktion selbstfunction foo() {
return 'hello world';
}
folgendes beispiel ruft die funktion auf, nichts weiter passiertfoo();
folgendes gibt den rückgabewert der funktion ausecho foo();
natürlich ist auch das möglich (kein rückgabewert, echo direkt von der funktion):function foo() {
echo 'hello world';
}
foo();
hast du schon mal überprüft, ob deine abfrage überhaupt irgendwas tut? ;)
Die folgende Nachricht zum Thema stammt von: Cheatah, 30. 10. 2008, 18:11
Hi,
»» $result = (mysql_query($query));
»» $name_id = $result;
mysql_query liefert ein Resultset zurück. Niemals nur eine einzelne Zeile, und schon gar nicht nur ein einzelnes Datum. Du musst diesen Fall exakt so behandeln, als würdest Du siebzehn Milliarden Datensätze[1] mit je neunhundertdreiundsechzig Spalten erwarten.
Cheatah
[1] Von denen Du nur den ersten brauchst.
--
X-Self-Code: sh:( fo:} ch:~ rl:| br:> n4:& ie:% mo:) va:) de:] zu:) fl:{ ss:) ls:~ js:|
X-Self-Code-Url: http://emmanuel.dammerer.at/selfcode.html
X-Will-Answer-Email: No
X-Please-Search-Archive-First: Absolutely Yes
Die folgende Nachricht zum Thema stammt von: Tom, 30. 10. 2008, 19:29
Hello,
»» »» $result = (mysql_query($query));
»» »» $name_id = $result;
»»
»» mysql_query liefert ein Resultset zurück. Niemals nur eine einzelne Zeile, und schon gar nicht nur ein einzelnes Datum. Du musst diesen Fall exakt so behandeln, als würdest Du siebzehn Milliarden Datensätze[1] mit je neunhundertdreiundsechzig Spalten erwarten.
»»
»» [1] Von denen Du nur den ersten brauchst.
und vielleicht[2] auch noch sicherstellen, dass es nur einen gibt!
[2] je nach Aufgabenstellung und damit gefordertem Datenmodell
Liebe Grüße aus Syburg bei Dortmund
Tom vom Berg
--
Nur selber lernen macht schlau
http://bergpost.annerschbarrich.de
© 1998-2008
Impressum, Software: Classic Forum