Daniel: INSERT - Befehl mit PHP klappt nicht...

Hallo,

ich habe bei meinem Provider eine MySQL Datenbank die ich via PHP abfragen will.

Das mit der Datenbank klappt soweit alles wunderbar, mit phpMyAdmin oder dem MySQL Frontend kann ich auch ganz toll abfragen/einfügen nur wenn ich dasselbe mit PHP versuche dann will er irgendwie nicht so ganz.
Ein einfaches Script, das ich zukm Ausprobieren geschrieben habe, klappt leider nicht:

<?php
$username="xxxx";
$password="xxxxx";
$host="xxxx";
$database="baseball_cheerleading_de";

mysql_connect($host, $username, $password);
mysql_select_db($database);

$query="INSERT INTO baseball_cheerleading_de.User(Login, UserID) VALUES('xxx','xxx')";
mysql_db_query($database,$query);
?>

wenn ich die seite in der form ausführe bekomme ich keine fehlermeldung oder warnung also dachte ich eigetnlich das er einen datensatz eingefügt hat.
hat er aber leider nicht... ich denke, es ist irgendwas mit dem php-code, davon hab ich leider _noch_ herzlich wenig ahnung...

fällt einem von euch dazu was ein?
die verbindung müsste er eigentlich aufbauen, also kann der fehler (denke ich) nur im letzten teil des skriptes stecken, oder?

vielen dank für eure hilfe...
daniel

achso, eine sache noch, ich führe das skript auf meinem localhost aus... aber das müßte ja eigentlich egal sein, oder?

  1. Hoi,

    <?php
    $username="xxxx";
    $password="xxxxx";
    $host="xxxx";
    $database="baseball_cheerleading_de";

    mysql_connect($host, $username, $password);

    $id = mysql_connect($host,$username,$password) or die(mysql_error());

    mysql_select_db($database);

    mysql_select_db($database) or die(mysql_error());

    $query="INSERT INTO baseball_cheerleading_de.User(Login, UserID) VALUES('xxx','xxx')";

    Besser:

    $query = 'INSERT INTO User (Login,UserID) VALUES ("xxxx","xxxx")';

    mysql_db_query($database,$query);

    mysql_db_query ist deprecated. Besser:

    $result = mysql_query($query,$id) or die(mysql_error());

    Gruesse,
     CK

  2. Hallo,

    Ein einfaches Script, das ich zukm Ausprobieren geschrieben habe, klappt leider nicht:

    <?php
    $username="xxxx";
    $password="xxxxx";
    $host="xxxx";
    $database="baseball_cheerleading_de";

    mysql_connect($host, $username, $password);
    mysql_select_db($database);

    $query="INSERT INTO baseball_cheerleading_de.User(Login, UserID) VALUES('xxx','xxx')";
    mysql_db_query($database,$query);
    ?>

    $username="xxxx";
    $password="xxxxx";
    $host="xxxx";
    $database="baseball_cheerleading_de";

    $dbref=mysql_connect($host,$username,$password);
    if(!$dbref)
    {
      die("Keine Verbindung zum Datenbankserver.");
    }

    mysql_select_db($database,$dbref) or die("Fehler: ".mysql_error());

    $ergebnis=mysql_query($query,$dbref);

    if($ergebnis==1)
    {
      print "INSERT hat funktioniert.\n";
    }

    Nimm zur besseren Uebersichtlichkeit noch den DB-Namen aus der Abfrage heraus.

    MfG, Thomas

  3. WOW, das war ja ne antwort in echtzeit !!

    danke auf jeden fall, hat super geklappt !!
    hab mir mal ein schlaues buch zu php bestellt, kommt die tage,
    dann werd ich hoffentlich von allein auf sowas kommen ;-))

    eine letzte frage hab ich noch:

    ich hab bei mir lokal oft zum testen der DB den odbc_result_all befehl benutzt. also mir einfach ganz unformatiert die ganze DB anzeigen lassen...
    gibts da einen entsprechenden befehl für mysql unter php?
    sowas wie mySQL_result_all(connection, query); oder so?

    vielen danke für die schnelle hilfe !!#
    grüße daniel