mysql_query

Dieses Thema im Forum "Ruby, php, Perl, Python ..." wurde erstellt von blck, 01.03.2008.

  1. blck

    blck Routinier

    Dabei seit:
    15.01.2007
    Beiträge:
    268
    Zustimmungen:
    0
    Hallo,
    ich bin grad dabei, rein aus Übung, ein Telefonbuch mit PHP und MYsql zu schreiben.
    Genaugenommen geht es aber nur Datenbanken im Gedächtnis zu festigen:

    Nun zu meinem Problem:
    ich habe 4 Dtaein (index.php;db_connect;interface.php;datasave.php).
    Wenn ich aber nun im Firefox in die Eingabefelder etwas reinschreibe, schickt er es ab und mysql_error(); gibt kein Fehler aus.

    Hier noch meine Datein, ich denke ihre Aufgaben ergeben sich aus den Namen:

    index.php:
    PHP:
    <?
    //Verbindung zur blck Datenbank (telbook) herstellen
    include 'db_connect.php';
    //Interface laden
    include 'interface.php';
    //Daten Speichern
    include 'datasave.php';
    ?>
    db_connect.php
    PHP:
    <?
    $conn mysql_connect ("localhost","blck","*******");
        if (!
    $conn
        {
            echo 
    "Keine Verbindung zu $REMOTE_ADRESS m&Ouml;glich!";
            exit ();
        }
        
    mysql_select_db ("telbook");
    ?>
    interface.php (die eigentlich eine *.html sein sollte):D
    PHP:
    <html>
        <
    head>
            <
    title>Telefonbuch</title>
        </
    head>
    <
    body bgcolor="black">
     <
    div align="center">
      <
    form name="telebook" action="" method="POST">
        <
    table border="0">
        <
    td><tr>
        <
    font color="green"><b>NAME:</b></font>
        <
    input type="text" name="name" value="Name">
        </
    tr>
        <
    tr>
        <
    font color="green"><b>NUMMER:</b></font>        
        <
    input type="text" name="nummer" value="Telefonnummer">
        </
    tr>    
        <
    input type="submit" value="Absenden">
      </
    form>
     </
    div>
    </
    body>
    </
    html>
    und zum Schluss die datasave.php
    PHP:
    <?
    $name $_POST["name"];
    $nummer $_POST["nummer"];

    mysql_query("INSERT INTO telbook
            (name,nummer)
        VALUES  (
    $name,$nummer)");
    mysql_error();
    ?>
     
  2. Anzeige

    Schau dir mal diese Kategorie an. Dort findest du bestimmt etwas.
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren
  3. #2 lord-spam, 01.03.2008
    lord-spam

    lord-spam Eroberer

    Dabei seit:
    03.12.2006
    Beiträge:
    73
    Zustimmungen:
    0
    Ort:
    Cuxhaven
    Als so kann dir mysql_error() auch nichts bringen, die Funktion liefert einen String zurück. Das heißt nicht, dass sie ihn auch automatisch ausgibt. Du müsstest dir mysql_error() auch z.B. per echo mysql_query(); ausgeben.
     
  4. blck

    blck Routinier

    Dabei seit:
    15.01.2007
    Beiträge:
    268
    Zustimmungen:
    0
    Bekomme jetzt:
    Code:
    No database selected
    Warning: Wrong parameter count for mysql_query() in /var/www/telbook/datasave.php on line 9
    
    zurück!

    Aber eigentlich funktioniert der connect zu meiner DB ja, sonst müsste ich meine eigene Fehlermeldung zurückbekommen.
     
  5. #4 lord-spam, 01.03.2008
    lord-spam

    lord-spam Eroberer

    Dabei seit:
    03.12.2006
    Beiträge:
    73
    Zustimmungen:
    0
    Ort:
    Cuxhaven
    Häng mal an die query Funktion als zweiten Parameter deine Connection an, also $conn
     
  6. blck

    blck Routinier

    Dabei seit:
    15.01.2007
    Beiträge:
    268
    Zustimmungen:
    0
    PHP:
    <?
    $name $_POST["name"];
    $nummer $_POST["nummer"];

    mysql_query("INSERT INTO $conn telbook
            (name,nummer)
        VALUES  (
    $name,$nummer)");
    echo 
    mysql_error($conn);
    echo 
    mysql_query();
    ?>
    so siehts jetzt aus. Bekomm aber immernoch die selben Fehlermeldungen!

    gruß Blck
     
  7. #6 lord-spam, 01.03.2008
    lord-spam

    lord-spam Eroberer

    Dabei seit:
    03.12.2006
    Beiträge:
    73
    Zustimmungen:
    0
    Ort:
    Cuxhaven
    Nein, ich meinte (mysql_query)

    PHP:
    mysql_query("INSERT INTO blabla"$conn);
     
  8. blck

    blck Routinier

    Dabei seit:
    15.01.2007
    Beiträge:
    268
    Zustimmungen:
    0
    Danke für deine Hilfe, jetzt siehts so aus:
    PHP:
    <?
    $name $_POST["name"];
    $nummer $_POST["nummer"];

    mysql_query("INSERT INTO telbook
            (name,nummer)
        VALUES  (
    $name,$nummer)"$conn);
    echo 
    mysql_error($conn);

    ?>
    Wenn ich alles in die index.php packe, passiert das Selbe!

    Gruß Blck
     
  9. #8 surf2me, 01.03.2008
    Zuletzt bearbeitet: 01.03.2008
    surf2me

    surf2me Vorarlberger

    Dabei seit:
    19.07.2007
    Beiträge:
    25
    Zustimmungen:
    0
    Hallo,

    eventuell schlägt das Auswählen der Datenbank fehl.

    Nur nebenbei: Es ist gefährlich direkt Daten aus POST zu übernehmen. Die Funktionen sprintf und mysql_real_escape_string helfen hier.

    grüße
    surf2me
     
  10. #9 lord-spam, 01.03.2008
    lord-spam

    lord-spam Eroberer

    Dabei seit:
    03.12.2006
    Beiträge:
    73
    Zustimmungen:
    0
    Ort:
    Cuxhaven
    Funktioniert denn der mysql_select_db? Musst du mal gucken, aber die Funktion gibt bestmmt True oder False zurück..

    Edit: wie surf2me sagt^^
     
  11. dmaphy

    dmaphy Routinier

    Dabei seit:
    16.04.2004
    Beiträge:
    482
    Zustimmungen:
    0
    Ort:
    Hamburg
    Viele der mysql_*-Funktionen liefern boolsche Werte - also true oder false - zurück.
    Das kann dir eine Hilfe sein, wenn du diese Rückgabewerte nutzt. Beispiel:

    Code:
    if (mysql_query("use telbook;")) {
      // weitermachen mit den Telefonbuch-Sachen
    }
    
    else
    {
      echo "Konnte die Datenbank nicht auswählen. Fehlermeldung: <br />" . mysql_error();
    }
    
    In dem Fall und da dein Script recht klein ist, macht es vielleicht auch Sinn, die Sachen nicht in separate Dateien aufzuteilen. Das passt allemal alles in eine Datei. :)
     
  12. amöbe

    amöbe Tripel-As

    Dabei seit:
    21.01.2007
    Beiträge:
    188
    Zustimmungen:
    0
    Man kann die Bool-Werte auch recht schön abfragen indem man sowas verwedet:
    PHP:
    $result=mysql_query($query) or user_error("Anfrage fehlgeschlagen: " mysql_error(), E_USER_ERROR); 
    Weil bei PHP das or "faul" ist, d.h. ist Bed. 1 schon war, testet er gar nicht die zweite Bed., und ist Bed. 1 falsch, testet er die zweite und erzeugt dabei den Fehler.
     
  13. #12 blck, 03.03.2008
    Zuletzt bearbeitet: 03.03.2008
    blck

    blck Routinier

    Dabei seit:
    15.01.2007
    Beiträge:
    268
    Zustimmungen:
    0
    Hallo,
    war übers WE beschäftigt, meine db_connect sieht jetzt wie folgt aus:
    PHP:
    <?
    $conn mysql_connect ("localhost","blck","***************(Hoffentlich hats noch keiner gelsen");
        if (!
    $conn
        {
            echo 
    "Keine Verbindung zu $REMOTE_ADRESS m&Ouml;glich!";
            exit ();
        }
            
    var_dump(mysql_select_db ("telbook"));
    ?>
    Jetzt bekomm ich auf meiner Page folgende Meldungen:
    Irgendwie ist da immernoch der Wurm drin, weil der connect ansich muss ja funktioniert haben sonst hät ich die Fehlermeldung von mir bekommen.

    Vielen Dank für eure Hilfe,
    Blck
     
  14. daboss

    daboss Keine Macht für niemand!

    Dabei seit:
    05.01.2007
    Beiträge:
    1.294
    Zustimmungen:
    0
    Ort:
    sydney.australia.world
    Die Datenbank telbook existiert auch? (Nur zur Sicherheit ;) )
     
  15. Anzeige

    Vielleicht findest du HIER Antworten.
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren
  16. blck

    blck Routinier

    Dabei seit:
    15.01.2007
    Beiträge:
    268
    Zustimmungen:
    0
    HAHA:devil:
    ihr werdets nich glauben aber das wars :D:D:D:D, hatte Tabelle und Datenbank vertauscht!

    Leider bekomm ich jetzt die Meldung
    DANKE, blck

    und tschuldigung für soviel Dummheit
     
  17. #15 daboss, 03.03.2008
    Zuletzt bearbeitet: 03.03.2008
    daboss

    daboss Keine Macht für niemand!

    Dabei seit:
    05.01.2007
    Beiträge:
    1.294
    Zustimmungen:
    0
    Ort:
    sydney.australia.world
    Falls du bei
    meinst, probier mal:

    PHP:
    <?
    $name = isset($_POST["name"]) ? $_POST['name'] : "";
    $nummer =  isset($_POST["nummer"]) ? $_POST['nummer'] : "";

    if(!empty(
    $name) && !empty($nummer)){
    mysql_query("INSERT INTO telbook
            (name,nummer)
        VALUES  ('
    $name','$nummer')"$conn);
    echo 
    mysql_error($conn);
    }
    ?>
     
Thema:

mysql_query

Die Seite wird geladen...

mysql_query - Ähnliche Themen

  1. mysql_query + ausgabewert

    mysql_query + ausgabewert: Hallo, bin dabei grade ein Loginsystem zu schreiben. Auf jedenfall bin ich jetzt an der Stelle angelangt, an der das System überprüfen soll, ob...
  2. PHP und MySQL CREATE TABLE in mysql_query

    PHP und MySQL CREATE TABLE in mysql_query: Neue Frage: Ich habe einen String, der Stück für Stück auseinander genommen wird und jeder Buchstabe wird nun angeschaut! Kommt nun ein...