Supportnet / Forum / Skripte(PHP,ASP,Perl...)
mysql_fetch_row(): valid MySQL result
Frage
Hallo guten Tag zusammen! :-)
ich habe da ein kleines Prob. on Line 50 ... ich finde zwar denn fehler nicht, aber vielleicht jemand von euch? :-)
[code]
<?
$result = mysql_query("select * from refverdienst order by anzrefs desc");
while(list($userid,$refverdienst,$refausgezahlt,$anzrefs,$gesverdienst) = mysql_fetch_row($result)) {
print("
<table border=0 width=100%>
<tbody>
<tr>
<td width=15%>$userid</td>
<td width=15%>$anzrefs</td>
<td width=30%>$refverdienst</td>
<td width=40%>$refausgezahlt</td>
</tr>
<tr>
</tbody>
</table>
");
}
?>
[/code]
wäre echt lieb, wenn da jemand was wüsste! Danke schon mal in vorraus!
Antwort 1 von Kai
Bin zwar jetzt nicht sooo der Experte darin, aber versuch doch mal
@mysql_fetch_row($result)
@mysql_fetch_row($result)
Antwort 2 von Kai
Noch was. Kann auch sein, daß Du aus = ein == machen musst!
= steht normaler Weise für eine Zuweisung und nicht für einen Vergleich.
So, nu bin ich aber ruhig :)
= steht normaler Weise für eine Zuweisung und nicht für einen Vergleich.
So, nu bin ich aber ruhig :)
Antwort 3 von Mirco151
nee .... also das mit @mysql_fetch_row($result) geht nicht und das mit aus = in == geht nicht, da kommt folgender fehler:
Parse error: parse error, unexpected T_IS_EQUAL, expecting ´=´ in....... on Line 50Antwort 4 von naja*
hi,
die abfrage liefert einfach kein ergebnis.
führe sie mal in PHPmyAdmin aus und schau ob ein result raus kommt.
mfg naja
die abfrage liefert einfach kein ergebnis.
führe sie mal in PHPmyAdmin aus und schau ob ein result raus kommt.
mfg naja
Antwort 5 von naja
nochmal...
den teil:
while(list($userid,$refverdienst,$refausgezahlt,$anzrefs,$gesverdienst) = mysql_fetch_row($result))
deiner abfrage versteh ich nicht, was möchtest du da machen?
mfg naja
den teil:
while(list($userid,$refverdienst,$refausgezahlt,$anzrefs,$gesverdienst) = mysql_fetch_row($result))
deiner abfrage versteh ich nicht, was möchtest du da machen?
mfg naja
Antwort 6 von Mirco151
Zitat:
führe sie mal in PHPmyAdmin aus und schau ob ein result raus kommt.
bitte was??? Eine *.php Datei in PHPmyAdmin ausführen, wo gibts denn sowas?führe sie mal in PHPmyAdmin aus und schau ob ein result raus kommt.
while(list($userid,$refverdienst,$refausgezahlt,$anzrefs,$gesverdienst) = mysql_fetch_row($result)) Zitat:
deiner abfrage versteh ich nicht, was möchtest du da machen?
Wie jetzt? Ich will einfach nur durch das $Result eine Refstatistik über die PHPmyAdmin-DB laufen lassen! :-/deiner abfrage versteh ich nicht, was möchtest du da machen?
Antwort 7 von Links
also alls erstes ist das oben dein ganzer script ?
wen ja da geibt es keine zeile 50 *g*
zweitens zerbindest du PHP mit einer datenbank ?
wen ja da geibt es keine zeile 50 *g*
zweitens zerbindest du PHP mit einer datenbank ?
$db = @MYSQL_CONNECT($db_server,$db_user,$db_passwort) or die ("Konnte keine Verbindung zur Datenbank herstellen");
$db_check = @MYSQL_SELECT_DB($db_name);
if($db)Antwort 8 von naja
hi,
also
diese abfrage sollst du natürlich in phpmyadmin ausfürhen! da hättest du aber auch von selbst drauf kommen können....
und was du im zweiten teil machen willst ist mir immer noch unklar.
mfg naja
also
select * from refverdienst order by anzrefs desc
diese abfrage sollst du natürlich in phpmyadmin ausfürhen! da hättest du aber auch von selbst drauf kommen können....
und was du im zweiten teil machen willst ist mir immer noch unklar.
mfg naja
Antwort 9 von Links
so habe das noch mall umgeschriben so:
das sollte jetzt funsen :)
<?PHP
/* Allgemeine Daten fuer die Datenbankanbindung und direkter Connect zur Datenbank. Nach Einbindung dieses Segments kann direkt mit MySQL-Befehlen auf die Datenbank zugegriffen werden.*/
/* Datenbankserver - In der Regel die IP */
$db_server = "localhost";
/* Datenbankname */
$db_name = "xy";
/* Datenbankuser */
$db_user = "xy";
/* Datenbankpasswort */
$db_passwort = "xy";
$db = @MYSQL_CONNECT($db_server,$db_user,$db_passwort) or die ("Konnte keine Verbindung zur Datenbank herstellen");
$db_check = @MYSQL_SELECT_DB($db_name);
if($db)
$result = mysql_query("select userid,refverdienst,refausgezahlt,anzrefs,gesverdienst from refverdienst order by anzrefs desc");
$num = mysql_num_rows($result);
if($num > 0){
##
while($rowa = mysql_fetch_row($result))
{
echo ´<table border=0 width=100%>
<tbody>
<tr>
<td width=15%>´.$row[0].´</td>
<td width=15%>´.$row[3].´</td>
<td width=30%>´.$row[5].´</td>
<td width=40%>´.$row[2].´</td>
</tr>
<tr>
</tbody>
</table>´;
}
##
} else {
echo "fehler keine einträge in der db";
}
}
?>das sollte jetzt funsen :)
Antwort 10 von naja
nochn error_reporting(E_ALL) davor und es wäre noch schöner :-)
Antwort 11 von Mirco151
MySQL lieferte ein leeres Resultat zurück (d.h. null Zeilen). ... hab jetzt zwar grad keine ahnung was das heißen soll, wird aber schon stimmen *g*Antwort 12 von naja
oh mein gott fällt mir da nur ein...
und dann wunderst du dich über invalid mysql result?
hat die tabelle überhaupt einträge?
und dann wunderst du dich über invalid mysql result?
hat die tabelle überhaupt einträge?
Antwort 13 von Mirco151
es geht immer noch nicht..... falls es sich jemand anschauen möchte...... http://www.mirco151.de/mt/spiele/spiele/jag_den_punkt/refstats.php
und da es so schön war, lade ich noch die datei rauf... http://www.mirco151.de/refstats.txt
und da es so schön war, lade ich noch die datei rauf... http://www.mirco151.de/refstats.txt
Antwort 14 von Mirco151
Zitat:
hat die tabelle überhaupt einträge?
ja hat sie,hat die tabelle überhaupt einträge?
1. punkt
2. punktrefs und
3. punktrefverdienst
Antwort 15 von naja
das sind keien einträge, das sind spalten.
am besten fängst du hier an: http://tut.php-q.net
du musst dir erstmal die grundlagen aneignen.
mfg naja
am besten fängst du hier an: http://tut.php-q.net
du musst dir erstmal die grundlagen aneignen.
mfg naja
Antwort 16 von Supermax
Wenn das Abfrageergebnis leer ist, gibt es keinen "not a valid result source" Fehler, sondern es wird ein gültiger Ergebnis-Handle zurückgegeben, der dann eben 0 Elemente enthält.
Mögliche Fehlerursachen ist wahrscheinlich ein Fehler in deiner SQL-Abfrage (z.B. Tippfehler beim Feldnamen). Daher ist der Rat, die Abfrage mal manuell in PHPMyAdmin oder direkt in der mysql-Kommandozeile auszuführen, sicherlich nicht blöd. Vor allem bei komplexeren Abfragen kann sich die strukturierte Anzeige von phpMyAdmin als sehr nützlich erweisen.
Mögliche Fehlerursachen ist wahrscheinlich ein Fehler in deiner SQL-Abfrage (z.B. Tippfehler beim Feldnamen). Daher ist der Rat, die Abfrage mal manuell in PHPMyAdmin oder direkt in der mysql-Kommandozeile auszuführen, sicherlich nicht blöd. Vor allem bei komplexeren Abfragen kann sich die strukturierte Anzeige von phpMyAdmin als sehr nützlich erweisen.
Antwort 17 von Mirco151
und in der Spalte wie du sagst, so gennannte "CREATE TABLE" sind die Einträge vorhanden, in punkte, punkrefs, punkteverdienst, in alle increment sind einträge vorhanden! Nur bekomme ich halt diesen fehler "on Line 50" es ist heute nicht mein erster Tag das ich mit PHP arbeite oder Seiten gestalte! Warum kommst du mit http://tut.php-q.net ???????? Ich hatte nur gefragt wo der fehler darin ist und du stellst mich blöd da? Das finde ich gar nicht nett von dir! Sorry, aber es kommt mir gerade so vor, als würdest du sagen wollen das ich keine ahnung habe ... aber okay, .... wie du meinst! und das script von oben Funktioniert bei mir auch nicht, da ich diese angaben schon in der config.php angegeben habe und das array, includen oder wie auch immer ist eigentlich alles schon vorhanden....! Aber nix für ungut! Eine löschung des Scripts tut es auch, dann fang ich wieder von vorne an mit schreiben! Mitlerweile kann ich es schon im schlaf.....! Ich fragte ja nur, weil ich dachte das hier und da jemand bessere augen hat als ich, das ich eventuell eine zeile übersehen habe...!
bye
bye
Antwort 18 von naja
ich seh doch an deinem code das du nicht genug erfahrung hast.
und dein letztes posting untermauert das nur ZU stark.
lern php dann fällt dir vieles leichter.
mfg naja
und dein letztes posting untermauert das nur ZU stark.
lern php dann fällt dir vieles leichter.
mfg naja
Antwort 19 von Mirco151
das abfragefenster war nicht leer.... wie ja schon gesagt, ist links in der Table 3 Einträge durch dieses Script vorhanden und in dennen auch Einträge sind ...
wahrscheinlich ein Fehler in deiner SQL-Abfrage (z.B. Tippfehler beim Feldnamen) habe ich eigentlich überprüft, ein sql-abfrage-fehler liegt nicht vor und das increment für das CREATE TABLE ist auch richtig angegeben! Daher ist der Rat, die Abfrage mal manuell in PHPMyAdmin oder direkt in der mysql-Kommandozeile auszuführen das habe ich auch schon versucht... kam öfters die meldung 1024 oder sowas und usr_web54_2.punktrefs dosn´t exist ... beim 3. mal oder so .... kam dann .... MySQL lieferte ein leeres Resultat zurück (d.h. null Zeilen) danach habe ich es mir angeschaut und Einträge waren/sind vorhanden! select * from refverdienst order by anzrefs desc kann bei mir nicht ausgeführt werden, da `usr_web54_2.punktrefs` nicht exestiert... da die angabe ohne usr_web54_2 erfolgen müsste!Antwort 20 von Mirco151
weisst du @naja jeder fängt mal bei Null AN, GENAUSO WIE DU!!!!! Und was machst DU??? DU machst andere Leute schlecht .... das die nichts können! Ich weiß was ich kann und das reicht mir ..... jeder macht mal FEHLER AUCH DU!!!!! vergiss einfach was ich hier geschrieben habe, hab noch andere dinge zu tun, auser mit dir hier herum zu streiten!
Hasta luego
Hasta luego
Antwort 21 von Supermax
Ich nehme mal an user_web54_2 ist der Datenbankname, der dir von deinem Hoster vorgegeben ist. Bei manchen Fehlermeldungen wird standardmäßig der vollständig qualifizierte Tabellenname angegeben, also DATENBANK.TABELLE
Du solltest vielleicht überprüfen, ob das mysql_select_db() korrekt funktioniert hat.
Du solltest vielleicht überprüfen, ob das mysql_select_db() korrekt funktioniert hat.
Antwort 22 von naja
ìch mache niemanden schlecht!
nur sehe ich das du ncoh am Anfang deiner PHP Karriere steht und da rät man leuten nun mal das PHP tutorial durchzuarbeiten.
Und auch dir habe ich es geraten, nur tust du es nicht wie ich sehe!
nun ja, du kannst das sehen wie du willst.
und du kannst ja mal mit deiner ignoranten einstellung ins quakenet zu #php.de joinen, mal gucken wie lang du drin bleibst...
mfg naja
nur sehe ich das du ncoh am Anfang deiner PHP Karriere steht und da rät man leuten nun mal das PHP tutorial durchzuarbeiten.
Und auch dir habe ich es geraten, nur tust du es nicht wie ich sehe!
nun ja, du kannst das sehen wie du willst.
und du kannst ja mal mit deiner ignoranten einstellung ins quakenet zu #php.de joinen, mal gucken wie lang du drin bleibst...
mfg naja
Antwort 23 von Mirco151
Zitat:
Ich nehme mal an user_web54_2 ist der Datenbankname, der dir von deinem Hoster vorgegeben ist.
ja ist es ... einer von vielen! :-) Ich nehme mal an user_web54_2 ist der Datenbankname, der dir von deinem Hoster vorgegeben ist.
Zitat:
Bei manchen Fehlermeldungen wird standardmäßig der vollständig qualifizierte Tabellenname angegeben, also DATENBANK.TABELLE
Theoretisch schon ...! Bei manchen Fehlermeldungen wird standardmäßig der vollständig qualifizierte Tabellenname angegeben, also DATENBANK.TABELLE
Zitat:
Du solltest vielleicht überprüfen, ob das mysql_select_db() korrekt funktioniert hat.
mysql_select_db() hab ich zwar noch nicht gemacht, aber ich schaue mal ....! ThanksDu solltest vielleicht überprüfen, ob das mysql_select_db() korrekt funktioniert hat.
Antwort 24 von Mirco151
also, habe es mit
gecodet ... als ausgabe bekomme ich "Datenbank wurde ausgewählt" ..... also kurz gesagt, eine verbindung zur DB bekomme ich!
<?PHP
/*
Allgemeine Daten fuer die Datenbankanbindung
und direkter Connect zur Datenbank. Nach
Einbindung dieses Segments kann direkt mit
MySQL-Befehlen auf die Datenbank zugegriffen
werden.
*/
/* Datenbankserver - In der Regel die IP */
$db_server = ´localhost´;
/* Datenbankname */
$db_name = ´blabla´;
/* Datenbankuser */
$db_user = ´blabla´;
/* Datenbankpasswort */
$db_passwort = ´123456´;
/* Erstellt Connect zu Datenbank her */
$db = @mysql_pconnect($db_server, $db_user, $db_passwort)
or die (´Konnte keine Verbindung zur Datenbank herstellen´);
$db_select = @mysql_select_db($db_name);
if($db_select)
echo ´Datenbank wurde ausgewählt´;
?>gecodet ... als ausgabe bekomme ich "Datenbank wurde ausgewählt" ..... also kurz gesagt, eine verbindung zur DB bekomme ich!

