Anzeige

php, Warenkorb, DB, fehlermeldung, ils, SQL, OPP, SQL-Code,

php, Warenkorb, DB, fehlermeldung, ils, SQL, OPP, SQL-Code, | PSD-Tutorials.de

Erstellt von Merlin10, 22.12.2013.

  1. Merlin10

    Merlin10 Noch nicht viel geschrieben

    Dabei seit:
    30.10.2013
    Beiträge:
    41
    php, Warenkorb, DB, fehlermeldung, ils, SQL, OPP, SQL-Code,
    Hallo Leute
    bin hier am Lernen ,studieren, es geht um einen webshop -datenbankbasiert bekomme eine wahnsinnge fehlermeldung wenn ich artikel in den Warenkorb lege und den Warenkorb anklicke.
    ich rufe das ganze mit diesem script auf, stehe da voll auf dem schlauch, vlt kann jemand mal drüber schauen.
    PHP:
    1.  
    2. // class webshop
    3. require_once ("class_artikel.php");
    4. require_once ("class_pdf.php");
    5. require_once ("class_kunde-neu.php");
    6.  
    7.  
    8. class webshop extends artikel
    9. {
    10.     public $pdf;
    11.     public $kunde;
    12.    
    13.    
    14.     public function __construct()
    15.     {
    16.         parent::__construct();
    17.         $this->pdf = new pdf();
    18.         $this->kunde = new kunde($this->dbh);
    19.     }
    20.     public function auswahl($kunde) //wird über die DB abgerufen, zeigt ausgewählte Artikel
    21.     {
    22.         $sql = "SELECT a_name, w_menge
    23.                FROM ws_warenkorb, ws_artikel
    24.                WHERE w_kunde = $kunde,
    25.                AND   w_artikelnr = a_artikelnr";
    26.         $result = $this->dbh->query($sql);
    27.         $tmp = $result->fetchAll(PDO::FETCH_ASSOC);
    28.         if (count($tmp) > 0)
    29.         {
    30.             print "<table>\n";
    31.             print " <tr>\n <th>Artikel</th><th>Anzahl</th>\n </tr>\n";
    32.             foreach ($tmp as $key)
    33.             {
    34.                 print " <tr>\n";
    35.                 print " <td>" .$key['name']."</td><td>".$key['anzahl']."</td>\n";
    36.                 print "</tr>\n";
    37.             }
    38.             print "</table>\n";
    39.         }
    40.         else
    41.             print "Keine Artikel im Warenkorb gefunden.";
    42.     }
    43.  
    Die Fehlermeldung sieht so aus, habe das probiert das ich den AND befehl rausnehme, geht nicht.

    Warenkorb

    Im Warenkorb liegen:

    Fatal error: Uncaught exception 'PDOException' with message 'SQLSTATE[42000]: Syntax error or access violation: 1064 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 'FROM ws_warenkorb, ws_artikel WHERE w_kunde = , AND w_artikelnr = a_ar' at line 2' in /home/mondmagi/public_html/webshop-ils/class_webshop.php:25 Stack trace: #0 /home/mondmagi/public_html/webshop-ils/class_webshop.php(25): PDO->query('SELECT a_name, ...') #1 /home/mondmagi/public_html/webshop-ils/index.php(20): webshop->auswahl(NULL) #2 {main} thrown in /home/mondmagi/public_html/webshop-ils/class_webshop.php on line 25
     
    #1      
  2. cebito

    cebito undefined

    262
    Dabei seit:
    08.03.2008
    Beiträge:
    8.316
    Geschlecht:
    männlich
    Ort:
    Dresden
    Kameratyp:
    zum durchgucken
    php, Warenkorb, DB, fehlermeldung, ils, SQL, OPP, SQL-Code,
    AW: php, Warenkorb, DB, fehlermeldung, ils, SQL, OPP, SQL-Code,

    Mach mal das Komma hinter $kunde weg
     
    #2      
  3. m_c

    m_c Nicht mehr ganz neu hier

    Dabei seit:
    26.08.2007
    Beiträge:
    163
    Geschlecht:
    männlich
    php, Warenkorb, DB, fehlermeldung, ils, SQL, OPP, SQL-Code,
    AW: php, Warenkorb, DB, fehlermeldung, ils, SQL, OPP, SQL-Code,

    Da $Kunde leer ist, reicht das nicht
     
    #3      
  4. Merlin10

    Merlin10 Noch nicht viel geschrieben

    Dabei seit:
    30.10.2013
    Beiträge:
    41
    php, Warenkorb, DB, fehlermeldung, ils, SQL, OPP, SQL-Code,
    AW: php, Warenkorb, DB, fehlermeldung, ils, SQL, OPP, SQL-Code,

    o.k das habe ich übersehen, ich habe es weg genommen. der Fehler ist noch da. wäre es hilfreich wenn ich den ganzen script code hier poste?
     
    #4      
  5. Merlin10

    Merlin10 Noch nicht viel geschrieben

    Dabei seit:
    30.10.2013
    Beiträge:
    41
    php, Warenkorb, DB, fehlermeldung, ils, SQL, OPP, SQL-Code,
    AW: php, Warenkorb, DB, fehlermeldung, ils, SQL, OPP, SQL-Code,

    Sobald ich einen Artikel in den warenkorb lege bekomme ich den fehler,


    Fatal error: Uncaught exception 'PDOException' with message 'SQLSTATE[42000]: Syntax error or access violation: 1064 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 'AND w_artikelnr = a_artikelnr' at line 4' in /home/mondmagi/public_html/webshop-ils/class_webshop.php:25 Stack trace: #0 /home/mondmagi/public_html/webshop-ils/class_webshop.php(25): PDO->query('SELECT a_name, ...') #1 /home/mondmagi/public_html/webshop-ils/index.php(32): webshop->auswahl(NULL) #2 {main} thrown in /home/mondmagi/public_html/webshop-ils/class_webshop.php on line 25
     
    #5      
  6. Duddle

    Duddle Posting-Frequenz: 14µHz

    Dabei seit:
    03.02.2006
    Beiträge:
    3.864
    Geschlecht:
    männlich
    Ort:
    Dresden
    php, Warenkorb, DB, fehlermeldung, ils, SQL, OPP, SQL-Code,
    AW: php, Warenkorb, DB, fehlermeldung, ils, SQL, OPP, SQL-Code,

    Falls $kunde leer ist, wie es in deiner ersten Fehlermeldung erscheint, dann ist die Anfrage
    Code (Text):
    1.  
    2. SELECT a_name, w_menge
    3. FROM ws_warenkorb, ws_artikel
    4. WHERE w_kunde =
    5. AND   w_artikelnr = a_artikelnr
    6.  
    was kein korrektes SQL ist. Prüf $kunde auf den korrekten Inhalt und setz wenn notwendig einen Standardwert bzw. werfe eine Exception.


    Duddle
     
    #6      
x
×
×