MAMP: Problem beim Auslesen aus Mysql DB

Dieses Thema im Forum "Datenbanksysteme für das Web" wurde erstellt von Yogy27, 20.04.2006.

  1. Yogy27

    Yogy27 Thread Starter MacUser Mitglied

    Beiträge:
    363
    Zustimmungen:
    0
    MacUser seit:
    13.01.2005
    Hallo,

    und zwar muss ich für die Schule ein einfaches Umfrage Script mit Kommentaren erweitern, dafür hab ich mir Mamp installiert, funzt auch soweit, also PHp wird interpretiert, MYsql läuft und meine Tabbellenstruktur hab ich importiert. Doch nun das Problem, mein Script liest und schreibt keine Daten in die DB. Der User hat aber volle Rechte mit dem das Script Zugreift, weiß jemand Rat ?
     
  2. moses_78

    moses_78 MacUser Mitglied

    Beiträge:
    1.321
    Zustimmungen:
    22
    MacUser seit:
    08.04.2005
    Sorry, meine Kristallkugel ist in der Reperatur :D

    Nee, mal im Ernst: Es hilft ungemein, wenn man einen
    Quellcode postet :)
     
  3. Yogy27

    Yogy27 Thread Starter MacUser Mitglied

    Beiträge:
    363
    Zustimmungen:
    0
    MacUser seit:
    13.01.2005
    So hier werden die variablen in die DB eingespeist

    Das macht er nicht, und auslesen auch nicht, obwohl es vorher auf nem normalen MYsql server auf der Schule noch lief.
     
  4. moses_78

    moses_78 MacUser Mitglied

    Beiträge:
    1.321
    Zustimmungen:
    22
    MacUser seit:
    08.04.2005
    Keine Ahnung, ob das jetzt der einzige Fehler ist, aber wenn du Variablen in-
    nerhalb einzelner Anführungszeichen (') setzt, wird nicht ihr Inhalt, sondern
    nur der Name ausgegeben :)

    Außerdem fehlt da, wenn nicht nur durch den Codeschnipsel bedingt, den du
    da gepostet hast, noch eine schließende geschweifte Klammer....

    Also:
    Code:
    $submitbutton = array_item($_POST, 'submitbutton');
    $vote = array_item($_POST, 'opinion');
    $com = array_item($_POST, 'eingabe');
    $knamee = array_item($_POST, 'knamee');
    
    if($submitbutton=="OK") 
     {
      if($vote>=0 && $vote<=4) 
       {
        mysql_query("INSERT INTO votelanguage(choice, comment, kname) VALUES(".$vote.", ".$com.", ".$knamee.")");
       }
     }
    ....oder einfach
    Code:
    mysql_query("INSERT INTO votelanguage(choice, comment, kname) VALUES ($vote, $com, $knamee)");
     
  5. Yogy27

    Yogy27 Thread Starter MacUser Mitglied

    Beiträge:
    363
    Zustimmungen:
    0
    MacUser seit:
    13.01.2005
    Danke aber das geht soweit, ich denke es liegt einfach an der Datenbank von MAMP.
     
  6. oneOeight

    oneOeight MacUser Mitglied

    Beiträge:
    47.163
    Zustimmungen:
    3.683
    MacUser seit:
    23.11.2004
    lies doch mal den fehlercode von der mysql_query aus...
    oder probier die query in phpmyadmin, damit du mal rauskriegst was daran falsch ist...

    öffnest du die DB auch korrekt?
     
  7. wegus

    wegus MacUser Mitglied

    Beiträge:
    14.713
    Zustimmungen:
    1.348
    MacUser seit:
    13.09.2004
    Laß Dir die Query als PHP-String auf dem Bildschirm ausgeben, statt sie auszuführen!
    Folge damit den Tipps von OneOeight und Du solltest den Fehler finden.
     
  8. Yogy27

    Yogy27 Thread Starter MacUser Mitglied

    Beiträge:
    363
    Zustimmungen:
    0
    MacUser seit:
    13.01.2005
    Wie macht man das ? Sorry ich bin echt nen ziemlicher noob in mysql, php krams.
     
  9. quick'n'dirty ohne möglichkeien zu Testen würde ich das script so ändern:


    PHP:
    $submitbutton array_item($_POST'submitbutton');
    $vote array_item($_POST'opinion');
    $com array_item($_POST'eingabe');
    $knamee array_item($_POST'knamee');

    if(
    $submitbutton=="OK"
     {
      if(
    $vote>=&& $vote<=4
       {
          
    $qry"INSERT INTO votelanguage(choice, comment, kname) VALUES(".$vote.", ".$com.", ".$knamee.")";
        echo 
    $qry// Um den Query auszugeben
          
    mysql_query($qry);
        echo 
    mysql_error(); // Um die MySQL-Fehlermeldung auszugeben
       
    }
     }
    Aber mag mir mal einer die Funktion array_item erklären? Hab die weder bei SelPHP noch im PHP-Hanbduch gefunden...

    gruß
    Lukas
     
  10. oneOeight

    oneOeight MacUser Mitglied

    Beiträge:
    47.163
    Zustimmungen:
    3.683
    MacUser seit:
    23.11.2004
    machst du vorher ein mysql_connect und guckst, ob die DB erfolgreich geöffnet wurde?

    dann mach doch einfach mal ein
    print("INSERT INTO votelanguage(choice,comment,kname) VALUES($vote,'$com',$knamee)");
    dann siehst du erstmal was da php draus macht, also ob deine query überhaupt korrect ist...

    lies mal http://de2.php.net/mysql_query , das gibt dir doch bei einem INSERT true or false zurück, da siehst du, ob die query erfolg hatte...
     
Die Seite wird geladen...

Diese Seite empfehlen