Problem mit SQL abfrage
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
argument
ausgabe
beitrag
customer
datensatz
entschuldige bitte
ergebnis
evaluation
fehlermeldung
folgende fehlermeldung
hilfe
kl
not
resource
result
schneller beitrag
tabelle
variable
zeichenkette
zeile
-
Hallo, ich habe eine Variable, die mit $_GET ?bergeben wird.
Diese ist auch vorhanden, wenn ich sie mit echo ausgeben will, dann geht es. Wenn ich eine Abfrage mit PHP machen will, passiert nichts?
Code:
echo"$klsdfjghjdklfkldjgfkldfgdlkfgdkghdlkgjdkgfncbgd"; $abfrage = "SELECT * FROM php_downloads WHERE id = '$klsdfjghjdklfkldjgfkldfgdlkfgdkghdlkgjdkgfncbgd'"; $ergebnis = mysql_query($abfrage); while($down = mysql_fetch_object($ergebnis)) { }
-
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
2 L?sungsvorschl?ge:
1. Wei? nicht, ob es daran liegen k?nnte, aber versuch mal nen k?rzeren Variablen-NAmen zu nehmen
2. Was f?r ein Datenfeldtyp ist 'id'?! K?nnte daran liegen, dass die ' ' Dinger da weg m?ssen!
Sonst lass dir doch direkt nach der Abfrage mal mit Hilfe von echo mysql_error(); ausgeben, was der zu meckern hat!!
_____________
Julian -
id sollte auf alle F?lle varchar sein...
steht denn dieser String auch in der Tabelle drin?
wenn nicht kann er auch nicht gefunden und angezeigt werden.
speedtouch92 schrieb:
echo'$klsdfjghjdklfkldjgfkldfgdlkfgdkghdlkgjdkgfncbgd'; $abfrage = 'SELECT * FROM php_downloads WHERE id = '$klsdfjghjdklfkldjgfkldfgdlkfgdkghdlkgjdkgfncbgd''; $ergebnis = mysql_query($abfrage); while($down = mysql_fetch_object($ergebnis)) { }
$edit_list = mysql_query("SELECT * FROM php_downloads WHERE id = 'fgdlkfgdkghdlkgjdkgfncbgd'");
if(mysql_numrows($edit_list)){
$db_res = mysql_fetch_array($edit_list);
echo $db_res[id]
}else {echo "nichts gefunden"};
oder so -
Also, id ist vom Typ INT(255)
Wenn ich die abfreage in phpmyadmin eingebe, kommt keine Fehlermeldung, und mir wird 1 Ergebnis angezeigt. -
Habe so ein ?hnliches Problem vielleicht kann ja mal jemand gucken :(
Bekomme immer folgende Fehlermeldung:
Warning: mysql_fetch_object(): supplied argument is not a valid MySQL result resource in /home/webpages/lima-city/schwampf/html/handelstool/pruefen.php on line 39
$cus = $HTTP_POST_VARS["cus"]; $query = mysql_query("SELECT evaluationid, tradeid, customer, evaluation, remark FROM ht_evaluation WHERE `customer`= $cus"); while ($row = mysql_fetch_object($query)) { //<-- Das is die Zeile 39 $evaluation = $row[evaluation]; $remark = $row[remark]; echo "<tr> <td></td> <td><font color='#CCCCCC'>$evaluation</font></td> <td><font color='#CCCCCC'>$remark</font></td> </tr>\n"; // Ausgabe der Tabelle }
Beitrag ge?ndert am 3.03.2006 17:34 von schwampf -
Habe so ein ?hnliches Problem vielleicht kann ja mal jemand gucken :(
Bekomme immer folgende Fehlermeldung:
Warning: mysql_fetch_object(): supplied argument is not a valid MySQL result resource in /home/webpages/lima-city/schwampf/html/handelstool/pruefen.php on line 39
$cus = $HTTP_POST_VARS["cus"]; $query = mysql_query("SELECT evaluationid, tradeid, customer, evaluation, remark FROM ht_evaluation WHERE `customer`= $cus"); while ($row = mysql_fetch_object($query)) { //<-- Das is die Zeile 39 $evaluation = $row[evaluation]; $remark = $row[remark]; echo "<tr> <td></td> <td><font color='#CCCCCC'>$evaluation</font></td> <td><font color='#CCCCCC'>$remark</font></td> </tr>\n"; // Ausgabe der Tabelle }
Beitrag ge?ndert am 3.03.2006 17:34 von schwampf
ich w?rd die hochkommers anders machen bzw weglassen, wei? aber ned obs an dem liegt.
$query = mysql_query("SELECT evaluationid, tradeid, customer,
evaluation, remark FROM ht_evaluation WHERE customer= '$cus'");
------------------
speedtouch92 schrieb:
Hallo, ich habe eine Variable, die mit $_GET ?bergeben wird.
Diese ist auch vorhanden, wenn ich sie mit echo ausgeben will, dann geht es. Wenn ich eine Abfrage mit PHP machen will, passiert nichts?
Code:
echo'$klsdfjghjdklfkldjgfkldfgdlkfgdkghdlkgjdkgfncbgd'; $abfrage = 'SELECT * FROM php_downloads WHERE id = '$klsdfjghjdklfkldjgfkldfgdlkfgdkghdlkgjdkgfncbgd''; $ergebnis = mysql_query($abfrage); while($down = mysql_fetch_object($ergebnis)) { }
hmmm eine variable darf soweit ich wei? 20-30 zeichen lang sein, genauer wei? ich es leider nicht mehr. k?nnte der grund sein, muss es aber nicht.
leider hast du in der while schleife deines codes nichts drinnen oder hier nicht gepostet, sollte da keine ausgabe stattfinden ist es nat?rlich klar das du nichts bekommst aber du hast ja erw?hnt dass du immer nur den ersten datensatz bekommst ...
zeig bitte nochmal mehr code
mfg
.i -
Also ich w?rde den query so aufbauen:
$query = mysql_query("SELECT evaluationid, tradeid, customer, evaluation, remark FROM `ht_evaluation` WHERE `customer`= $cus"); -
Also ich w?rde den query so aufbauen:
$query = mysql_query("SELECT evaluationid, tradeid, customer, evaluation, remark FROM `ht_evaluation` WHERE `customer`= $cus");
Die Variable $cus muss in der MySQL-Abfrage in ' stehen, also
$query = " SELECT evaluationid, tradeid, customer, evaluation, remark FROM `ht_evaluation` WHERE `customer`= '$cus' "; mysql_query($query);
------------------------
Zu dem anderen Problem:
Du sagst, dass id ein INT mit 255 Zeichen ist. INT kann nur ganze Zahlen aufnehmen, weshalb das schonmal recht sinnlos ist, da du niemals eine Zahl mit 255 Stellen haben wirst (wenn doch, dann entschuldige bitte...), aber das nur so nebenbei.
Deine Variable $klsdfjghjdklfkldjgfkldfgdlkfgdkghdlkgjdkgfncbgd muss dementsprechend auch einen INT-Wert enthalten, also nur Zahlen. Vll ist das ja das Problem.
p.s.: Die maximale L?nge von Variablennamen kann in der php.ini festgelegt werden und betr?gt normal 64 Zeichen. -
Wenn id ein int-Wert ist, dann solltest du diesen auch nicht in Anf?hrungszeichen setzen. Den Variablennamen w?rde ich ein bisschen k?rzer machen...
echo $kls; $abfrage = "SELECT * FROM php_downloads WHERE id=$kls"; $ergebnis = mysql_query($abfrage); while($down = mysql_fetch_object($ergebnis)) { // ... }
edit: da war wohl jemand schneller.
Beitrag ge?ndert am 5.03.2006 14:11 von tuvalu -
speedtouch92 schrieb:
Also, id ist vom Typ INT(255)
Wenn ich die abfreage in phpmyadmin eingebe, kommt keine Fehlermeldung, und mir wird 1 Ergebnis angezeigt.
int(255) ? warum? int(5) iss sicherlich ausreichend
id = '$klsdfjghjdklfkldjgfkldfgdlkfgdkghdlkgd..'';
wenn Deine Id eine Zeichenkette warum dann id=int
und nicht varchar(255)?
-
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage