Problem bei validität von Argument

Guten Nachmittag :)
PHP:
        $abfrage = sprintf("
                    SELECT
                        id,
                        person,
                        ort,
                        datum,
                        fotograf
                    FROM
                        bilder
                    LIMIT
                        $start, $eintraege_pro_seite
                    WHERE
                        person='%s' OR ort='%s' OR datum='%s' OR fotograf='%s'",
                    mysql_real_escape_string($_POST['person']),
                    mysql_real_escape_string($_POST['ort']),
                    mysql_real_escape_string($_POST['datum']),
                    mysql_real_escape_string($_POST['fotograf']));
                    
        $ergebnis  = mysql_query($abfrage);
        /*

          
            Die nächste linie ist line 61 


        */
        while($row = mysql_fetch_row($ergebnis)) {
        echo $row->id."<br>"; // Hier die Ausgabe der Einträge
        }
erzeugt den Fehler: Warning: mysql_fetch_row(): supplied argument is not a valid MySQL result resource [...] in line 61.

Ist leider für mich nicht nachvollziehbar. Habe schon mit anderen Funktionen
wie mysql_fetch_assoc versucht, leider bleibt die Fehlermeldung bestehend.
Könnte vielleicht aber auch an der Tabelle liegen.
Code:
Feld          Typ   Länge  Kollation                 Null          Extra
id             int       10                                not null   auto_inc
person      text            latin1_general_ci      not null
ort           text            latin1_general_ci      not null
datum      date                                         not null
fotograf    text            latin1_general_ci      not null
Bin für jede Hilfe dankbar :)

0wnZ
 
Versuch's in Zeile 19 erstmal mit

PHP:
$ergebnis  = mysql_query ( $abfrage ) or die ( mysql_error() );

Dann bekommst du immerhin schonmal eine vernünftige Fehlermeldung.
 
das problem ist deine select abfrage....

von http://dev.mysql.com/doc/refman/5.0/en/select.html :
Code:
SELECT
    [ALL | DISTINCT | DISTINCTROW ]
      [HIGH_PRIORITY]
      [STRAIGHT_JOIN]
      [SQL_SMALL_RESULT] [SQL_BIG_RESULT] [SQL_BUFFER_RESULT]
      [SQL_CACHE | SQL_NO_CACHE] [SQL_CALC_FOUND_ROWS]
    select_expr, ...
    [FROM table_references
    [WHERE where_condition]
    [GROUP BY {col_name | expr | position}
      [ASC | DESC], ... [WITH ROLLUP]]
    [HAVING where_condition]
    [ORDER BY {col_name | expr | position}
      [ASC | DESC], ...]
    [LIMIT {[offset,] row_count | row_count OFFSET offset}]
    [PROCEDURE procedure_name(argument_list)]
    [INTO OUTFILE 'file_name' export_options
      | INTO DUMPFILE 'file_name'
      | INTO var_name [, var_name]]
    [FOR UPDATE | LOCK IN SHARE MODE]]

das 'limit' muss also nach dem 'where' kommen
 
Zurück
Oben