Archiv verlassen und diese Seite im Standarddesign anzeigen : ID zu gewisser Tabellenzeile bestimmen
Hi,
zu ersteinmal möchte ich mich in diesem Forum hier vorstellen. Ist ja schließlich mein erster Post. "Hallo! :)"
Ich hab ein kleines Problemchen bei dem ich auch schon gegooglet und die Forum-SuFu benutzt habe.
Und zwar:
Tabelle: (users)
ID usrname passwort
1 benutzer1 pw1
2 benutzer2 pw2
3 benutzer3 pw3
4 benutzer4 pw4
Situation:
Ich hab jetzt den namen, passwort von bspw. benutzer2 vorgegeben und möchte nun die passende id (in der gleichen zeile) bekommen .
wie kann ich das nun anstellen?
lag ich mit der sql-abfrage richtig:
mysql_query("SELECT id FROM users WHERE usrname='benutzer2');wenn ich das mache bekomm ich immer nur: Resource id #6
Aber wie kann ich jetzt den Wert von 'id' ausgeben ?
Hoffe ich habs gut erklärt und nichts falsch gemacht, wie bereits erwähnt ich hab die SuFu benutzt.
Danke im Vorraus :)
AmicaNoctis 04-08-2010, 04:21 Hallo und willkommen im Forum,
du brauchst zunächst erstmal Grundlagenwissen, das du dir mit dem PHP-Handbuch (http://www.php.net/manual/de/index.php) und ein paar Tutorials (http://www.peterkropff.de/site/tutorials/tutorials.htm) selbst aneignen solltest.
Wenn du dein Problem auf die Schnelle lösen musst, sieh dir mal das Beispiel #1 zu mysql_fetch_assoc (http://www.php.net/manual/de/function.mysql-fetch-assoc.php) an.
Gruß,
Amica
......du brauchst zunächst erstmal Grundlagenwissen, das du dir mit dem PHP-Handbuch (http://www.php.net/manual/de/index.php) und ein paar Tutorials (http://www.peterkropff.de/site/tutorials/tutorials.htm) selbst aneignen solltest.......
Tutorials hab ich auch schon gemacht zum Beispiel: phpeinfach (http://www.php-einfach.de/) und phpkurs (http://www.php-kurs.com/).
Trotzdem werde ich mir natürlich noch das tut von dir anschauen (man kann ja nie genug input bekommen)
Hab jetzt mal das mit Mysql_fetch_assoc probiert= keine Ausgabe
Dann hab ich das Script rauskopiert und angepasst = auch keine Ausgabe
Aber soweit ich weis ist doch die Mysql_fetch_...Geschichte sowieso besser für mehrere datensätze geeignet, oder? Ich möchte aber nur ein Datensatz ausgeben nmlich die id von dem jeweiligen user.
AmicaNoctis 04-08-2010, 15:49 Hab jetzt mal das mit Mysql_fetch_assoc probiert= keine Ausgabe
Dann hab ich das Script rauskopiert und angepasst = auch keine Ausgabe
Aktueller Code?
Mysql_fetch_...Geschichte sowieso besser für mehrere datensätze geeignet, oder? Ich möchte aber nur ein Datensatz ausgeben nmlich die id von dem jeweiligen user.
Völlig egal, wieviele Datensätze du aus dem Result Set (der Rückgabewert von mysql_query) abholst, abholen (mysql_fetch_*) musst du in jedem Fall.
Sieh dir das Beispiel an, dort ist auch das erklärt.
Tutorials hab ich auch schon gemacht
Davon war in deiner Frage noch wenig zu erkennen.
Hab jetzt mal das mit Mysql_fetch_assoc probiert= keine Ausgabe
Das holt nur die Daten - Ausgeben musst du sie immer noch selber.
Wenn dir die Struktur nicht klar ist, helfen var_dump/print_r beim Verständnis.
Das holt nur die Daten - Ausgeben musst du sie immer noch selber.
Wenn dir die Struktur nicht klar ist, helfen var_dump/print_r beim Verständnis.
Sry wenn ich mich nicht klar genug ausgedrückt habe. Ich hab das mit echo ausgegeben.
Ich schreib euch einfach mal den Code:
<?php
$conn = mysql_connect("localhost", "****", "*****");
if (!$conn) {
echo "Keine Verbindung zur DB: " . mysql_error();
exit;
}
if (!mysql_select_db("table1")) {
echo "Kann mydbname nicht auswählen: " . mysql_error();
exit;
}
$sql = "SELECT id
FROM users
WHERE usrname = 'baum'";
$result = mysql_query($sql);
if (!$result) {
echo "Anfrage ($sql) konnte nicht ausgeführt werden : " . mysql_error();
exit;
}
if (mysql_num_rows($result) == 0) {
echo "Keine Zeilen gefunden, nichts auszugeben, daher Abbruch";
exit;
}
while ($row = mysql_fetch_assoc($result)) {
//Ausgabe??
echo $row["usrid"];
}
mysql_free_result($result);
?>
Ausgabe ist wie gesagt keine. Aber da steht doch was von echo in der while schleife oder?
AmicaNoctis 04-08-2010, 16:17 $row['id'] meinst du bestimmt, denn in der Abfrage gibt es keine Spalte „usrid“, sondern nur „id“.
Mit wahsagas Tipp bezüglich print_r wärst du da selbst drauf gekommen.
Davon war in deiner Frage noch wenig zu erkennen.
In den Tuts wurde das nicht sooo gut erklärt. Sind halt ein bisschen schlecht.
Ist aber auch schwer heutzutage nochwas gutes zu finden.
Aber ich denke das dass Tut von euch besser sein wird.
Ausgabe ist wie gesagt keine. Aber da steht doch was von echo in der while schleife oder?
Ja - aber das falsche.
Stelle bitte unbedingt das error_reporting auf E_ALL und display_errors auf 1 auf deinem Entwicklungssystem - dann kann PHP dich auf solche Fehler schon selber hinweisen. (Wenn dir die Stichworte nichts sagen - bitte informieren.)
$row['id'] meinst du bestimmt, denn in der Abfrage gibt es keine Spalte „usrid“, sondern nur „id“.
Mit wahsagas Tipp bezüglich print_r wärst du da selbst drauf gekommen.
1. mal danke ja dass hab ich übersehen. Es hat funktioniert. *freu*
2. Muss ich das einfach so eingeben? <?php print_r; ?>
AmicaNoctis 04-08-2010, 16:27 In den Tuts wurde das nicht sooo gut erklärt.
Darum sollst du ja auch (und vor allem) das Handbuch lesen. Tutorials fangen nicht notwendigerweise immer beim Urschleim an, was nicht bedeutet, dass sie deswegen schlecht sind. Ein noch so gutes Tutorial über die perfekte Ziellandung wird dir nichts bringen, wenn du nicht weißt, was Landeklappen sind.
Darum sollst du ja auch (und vor allem) das Handbuch lesen. Tutorials fangen nicht notwendigerweise immer beim Urschleim an, was nicht bedeutet, dass sie deswegen schlecht sind. Ein noch so gutes Tutorial über die perfekte Ziellandung wird dir nichts bringen, wenn du nicht weißt, was Landeklappen sind.
JA da hast du recht. ICh kannte bisher immer nur das englische Handbuch von PHP. Und wusste garnicht dass es davon ne deutsche Ausgabe gibt xD.
Ich werde es mir auf jeden Fall durchlesen.
:danke:-schööön
|