Gegen Bilderklau - Das Original (https://www.gegen-bilderklau.net/index.php)
- Design, Website, Copyright (https://www.gegen-bilderklau.net/board.php?boardid=80)
--- Homepagehilfe (https://www.gegen-bilderklau.net/board.php?boardid=27)
---- Homepagehilfe - Archiv (https://www.gegen-bilderklau.net/board.php?boardid=139)
----- [PHP & MySQL] PHP Error: You have an error in your SQL syntax (https://www.gegen-bilderklau.net/thread.php?threadid=152393)


Geschrieben von bambi.bummler am 21.03.2009 um 14:12:

  PHP Error: You have an error in your SQL syntax

Hallo ihr Lieben fröhlich
Ich habe für meine VPH gebastelt, dass man sein Fohlen wachsen lassen kann, hierbei wird das Bild geändert und eigentlich soll das Alter verändert werden auf 1, bzw 2 Jahre je nachdem wie die User es wollen.

Es wird allerdings folgende Meldung bei mysql-error() ausgegeben:

Zitat:
Fehler: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'alter = 1 Jahr WHERE id = '136'' at line 1Dein Pferd ist erfolgreich gewachsen.


Hier könnt ihr pferd_wachsen.php sehen

php:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:

<form id="form1" name="form1" method="post" action="<?php $id = $_GET["id"]; echo "wachsen2.php?id=$id"; ?>">
  Neues Bild:
  <select name="bild" class="zeileblue" id="bild">
        <?php
        $sql = "SELECT * FROM bilder WHERE status = 'frei' ORDER BY id ASC";
        $ergebnis = mysql_db_query($db, $sql, $verbindung);
        while ($row = mysql_fetch_object($ergebnis))
        {
        $id = $row->id;
          echo "<option value='$id'>$id</option>";
         } 
        ?>
        </select>
  Neues Alter:
  <label></label>
  <label>
  <select name="alter" class="zeileblue" id="alter">
    <option value="1 Jahr" selected="selected">1 Jahr</option>
    <option value="2 Jahre">2 Jahre</option>
            </select>
  <input name="button" type="submit" class="zeileblue" id="button" value="Senden" />
  </label>
</form>


und hier nun die wachsen2.php

php:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:

<?php
    $bild = $_POST["bild"];
    $id = $_GET["id"];
                                // altes Bild wieder frei setzen
                                        $sqla = "SELECT * FROM pferde WHERE id = '$id'";
                                        $ergebnisa = mysql_db_query($db, $sqla, $verbindung);
                                        while ($rra = mysql_fetch_object($ergebnisa))
                                        {
                                            $alt = $rra->bild;
                                                
                                                $sqlb = "UPDATE bilder SET status = 'frei' WHERE url = '$alt'";
                                                $ergebnisb = mysql_db_query($db, $sqlb, $verbindung);
                                        }
                                
                                // neues Bild vergeben setzen
                                        $sqlc = "UPDATE bilder SET status = 'vergeben' WHERE id = '$bild'";
                                        $ergebnisc = mysql_db_query($db, $sqlc, $verbindung);
                                
                                // neues Bild URL einsetzen
                                        $sqld = "SELECT * FROM bilder WHERE id = '$bild'";
                                        $ergebnisd = mysql_db_query($db, $sqld, $verbindung);
                                        while ($rrd = mysql_fetch_object($ergebnisd))
                                        {
                                            $url = $rrd->url;
                                            $alter = $_POST["alter"];
                                            
                                            $sqle = "UPDATE pferde SET bild = '$url', alter = $alter WHERE id = '$id'";
                                            $ergebnise = mysql_db_query($db, $sqle, $verbindung);
                                            echo "Fehler: ".mysql_error();
                                        }
                                        
                                        
                                
                                echo "Dein Pferd ist erfolgreich gewachsen.";
?>


Zur besseren Übersicht habe ich header und so weg gelassen.



Geschrieben von .Senseless am 21.03.2009 um 14:34:

 

code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
                                // neues Bild URL einsetzen
                                        $sqld = "SELECT * FROM bilder WHERE id = '$bild'";
                                        $ergebnisd = mysql_db_query($db, $sqld, $verbindung);
                                        while ($rrd = mysql_fetch_object($ergebnisd))
                                        {
                                            $url = $rrd->url;
                                            $alter = $_POST["alter"];
                                            
                                            $sqle = "UPDATE pferde SET bild = '$url', alter = '$alter' WHERE id = '$id'";
                                            $ergebnise = mysql_db_query($db, $sqle, $verbindung);
                                            echo "Fehler: ".mysql_error();
                                        }



Geschrieben von bambi.bummler am 21.03.2009 um 14:43:

 

Es hat sich nichts verändert. Die '' hatte ich auch schon. Immer noch wird ausgegeben:

Fehler: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'alter = '1 Jahr' WHERE id = '136'' at line 1Dein Pferd ist erfolgreich gewachsen.



Geschrieben von .Senseless am 21.03.2009 um 14:55:

 

Zitat:
Original von .Senseless
code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
                                // neues Bild URL einsetzen
                                        $sqld = "SELECT * FROM bilder WHERE id = '$bild'";
                                        $ergebnisd = mysql_db_query($db, $sqld, $verbindung);
                                        while ($rrd = mysql_fetch_object($ergebnisd))
                                        {
                                            $url = $rrd->url;
                                            $alter = $_POST["alter"];
                                            
                                            $sqle = "UPDATE pferde SET bild = '$url', `alter` = $alter WHERE id = '$id'";
                                            $ergebnise = mysql_db_query($db, $sqle, $verbindung);
                                            echo "Fehler: ".mysql_error();
                                        }


Also so?



Geschrieben von bambi.bummler am 21.03.2009 um 14:59:

 

kann es sein, dass diese reservierten wörter ab und an gehen und dann wieder nicht? in anderen teilen der page verwende ich es ja auch ohne probleme o.O
Senseless hat jetzt auch nix gebracht, ich werd mal einfach alter in allen Teilen der Page umsetzen in ein anderes Wort.



Geschrieben von bambi.bummler am 21.03.2009 um 15:13:

 

danke Mordred, jetzt geht es. Gibt es irgendwo eine Liste dieser besetzten Worte? So dass man mal schauen kann.


Forensoftware: Burning Board, entwickelt von WoltLab GmbH