Supportnet Computer
Planet of Tech

Supportnet / Forum / Datenbanken

Eintragen via PHP ?!





Frage

Hallo, ich möchte eine Datenbank mit Hilfe einer PHP Datein "füttern" Ich benutze dazu folgendes Skript: #---------------------------------------------------------------- $tabellenname= "NeueTabelle"; $eintragen= "INSERT INTO $tabellenname ( `ID` , `Name` , `email` ) VALUES (´´, ´Test´, ´Geths_jetzt?´);"; $link = mysql_connect("localhost", $benutzer, $passwort); mysql_db_query($db_name, $eintragen, $link); mysql_close($link); #------------------------------------------------------------------ Nur wenn ich nach dem ausführen des Skriptes über PHP MyAdmin die Tabelle begutachte ist sie nicht um den gewünschen Eintrag größer. Was mache ich falsch ? Noch zur Info: -Beim ausführen treten keine Fehler auf. - $benutzername, $dd_name und $passwort sind zugewiesen. Hmmm also ich wüsste nicht was ich da noch tun sollte, zumal keine Fehlermeldung angegeben wird. Gruß Deathfun

Antwort 1 von greg68

Hallo,

nimm erst mal das ! direkt hinter der letzten ) weg.

dann schreibe folgendes:

$eintragen= "INSERT INTO $tabellenname ( `ID` , `Name` , `email` )
VALUES (´´, ´Test´, ´Geths_jetzt?´)";
$sql=mysql_query($eintragen) or die (mysql_error());


"or die ..." gibt dir dann im Falle eines Fehlers eine bessere Fehlerbeschreibung.

Gruss

Antwort 2 von Deathfun

Ich versuchs mal danke :)

Antwort 3 von DeluxeStyle

wie machst du es mit der id?
auto increment?

falls ja, dann schaut dein insert so aus


$eintragen= "INSERT INTO $tabellenname ( `Name` , `email` )
VALUES (´Test´, ´Geths_jetzt?´)";

Antwort 4 von luke

Frage, kann man die Varialbe $tabellename einfach so da stehen lassen oder muss man sie durch ein
".$tabellenname." 
ersetzen?

luke

Antwort 5 von DeluxeStyle

du musst es ersetzen, ist mir gar ned aufgefallen

Antwort 6 von greg68

ist es so schwer das PHP-scribt zu verstehen?

Antwort 7 von greg68

natürlich id autocrement

Antwort 8 von greg68

@luke

was meinst Dui mit stehen lassen?

Antwort 9 von greg68

und was ersetzen?

Antwort 10 von Deathfun

So nochmal danke, habs ausprobiert und es klappt vorzüglich!


Aber wo wir grade dabei sind hab ich noch eine Frage:

Ich habe nun Daten in der db und möchte diese sortiert ausgeben. Der Code sieht so aus:


// Verbindung zur db wurde hergestellt

    $sql = "SELECT
                Name,
                Rang,
            FROM
                DBT1
            ORDER BY
                ID DESC;";
    
    $result = mysql_query($sql) OR die(mysql_error());
        
    echo "So was weiß ich über dich:<br />\n";
    while($row = mysql_fetch_assoc($result)) {
        echo $row[´Name´]." &gt; ".$row[´Rang´]."<br />\n";
    }


Es sollen also Name und Rang ausgelesen und der ID nach abwerts sortiert werden.

Nur wenn ich das nun ausführe bekomme ich diese Meldung:

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 DSA ORDER BY ID DESC´ at line 4



Danke Deathfun

Antwort 11 von greg68

Hallo,

Du hast in deiner Abfrage 2 Semikola. Nimm das direkt hinter DESC weg. Eine PHP-Anweisung wird immer ganz am Ende mit einem Semikolon abgeschlossen

Gruss

Gregor

Antwort 12 von Deathfun

Hmmm daran lag es nicht...

Noch jemand eine Idee ? ^^


Aber mal so nebenbei:
Ist das erste ; nicht zum beenden des SQL befehls und das zweite ; zum beenden des PHP befehls ?
Es wird ja mittels eines PHP befehls ein SQL ausgeführt.

Antwort 13 von greg68

Nein,

innerhalb einer SQL-Abfrage muss kein Semikolon gesetzt werden aber immer am Ende der PHP-Anweisung. Du packst die Abfrage in eine Variable und führst dann erst mit mysql_query die Abfrage aus.

bei mir würde die Abfrage so aussehen

$sql=mysql_query("sql-abfrage") or die ...

kannste verschachteln.

aber ich sehe gerade das du nach "Rang" ein Komma hast. Lass das mal weg. Die Fehlermeldung sagt aus, dass es sich um einen ganz banalen Fehler handelt (Zeichen zuviel, Reihenfolge der Anweisung...).

Gruss

Gregor

Antwort 14 von Deathfun

*Kopf meets Tischplatte*

Jo jetzt gehts das *,* wars ^^


So so im ganze währe´s das dan.
Vielen dank an alle Helfer, ging wirklich sehr gut!



Gruß Deathfun

Ich möchte kostenlos eine Frage an die Mitglieder stellen:


Ähnliche Themen:


Suche in allen vorhandenen Beiträgen: