(PHP) warum geht das nicht???



  • Folgende Funktion

    <?php
    [...]

    $temp =mysql_query("INSERT INTO forname(fornr,forid,topic,nick,email,message,date)VALUES(forname ('fornr', 'forid', 'topic', 'nick', 'email', 'message', 'date') VALUES('forum', 'nr,nr', 'theme', 'nick,nick', 'mail', '$message', '')");

    if(!$temp)
    echo "error";

    [...]
    ?>

    gibt mir auf der Website andauernd einen Fehler aus...
    wieso???
    P.S.: $forname ist richtig, das hab ich schon zichmal überprüft...

    mfg



  • die tabellennamen ohne einfache tütel:

    INSERT INTO forname ( fornr, forid , topic, nick, email, message, date)....
    bzw.

    INSERT INTO $forname ( fornr, forid , topic, nick, email, message, date)....

    wenn du die tabelle auch dynamisch eingibst, aber fände ich seltsam.. weiß ich jetzt nicht

    [ Dieser Beitrag wurde am 20.01.2003 um 17:27 Uhr von elise editiert. ]



  • Danke Elise!
    Wollt dich nur drauf aufmerksam machen, dass du da oben nen $ vergessen hast 🙂

    mfg
    [edit]Also nur so zur info, das was du mir vorgeschlagen hast, funktioniert nicht... er gibt immer noch "error" aus[/edit]

    [ Dieser Beitrag wurde am 20.01.2003 um 17:52 Uhr von mrchat editiert. ]



  • Was für einen denn? ( echo mysql_error(); )

    [ Dieser Beitrag wurde am 20.01.2003 um 18:09 Uhr von flenders editiert. ]



  • Unknown column 'test' in 'field list'

    (Dazu gesagt hab nen Textfeld, was er auslesen soll...)

    mfg

    P.S.: hab das Feld als VARCHAR (50) definiert (in der Datenbank) aber "test" is ja kleiner als 50 *gg*

    [ Dieser Beitrag wurde am 20.01.2003 um 18:31 Uhr von mrchat editiert. ]



  • Dann musst du uns noch mehr Code zeigen, denn ehrlich gesagt seh ich in deinem Insert-Befehl nirgends eine Spalte namens test 🙄



  • Nagut, dann poste ich mal den code 🙂

    [.....]
    if(create == 1) { echo"

    <font face=Verdana size=2><br></font><div align=left><left>
    <table border=0 width=49%><tr><td width=32% align=left nowrap>
    <font color=# face=Verdana size=2>Name des Themas:</font></td>
    <td width=11%><font face=Verdana><input type=text name=topic size=40></font></td></tr>
    <tr><td width=32% align=left nowrap>
    <font color=# face=Verdana size=2>Dein Nickname:</font></td>
    <td width=11% nowrap><font face=Verdana>
    <input type=text name=nick size=40></font></td></tr>
    <tr><td width=32% align=left nowrap>
    <font color=# face=Verdana size=2>Deine Emailadresse:</font></td>
    <td width=11%><font face=Verdana>
    <input type=text name=mail size=40></font></td></tr>
    <tr><td width=32% align=left><font color=# face=Verdana size=2>Dein Beitrag:</font></td>
    <td width=11%><font face=Verdana><textarea rows=10 name=message cols=40></textarea></font></td></tr>
    <tr><td width=10% align=center colspan=2 nowrap><font face=Verdana>
    <tr><td width=32% align=left nowrap></td>
    <td width=11% nowrap><br><input type=submit value=Erstellen></td></tr>
    </font></form>
    ";
    }

    if(create == 2) { //Tabellen - ID - suchen if(!(result = mysql_query("SELECT * FROM forumnummer")))
    echo "error";
    nr=0;while(nr = 0; while(daten = mysql_fetch_row($result))
    { $nr = daten[0];} //nächste ID nehmen... nr ++;

    //Table erstellen
    if(!mysql_query("CREATE TABLE for$nr (ID TINYINT AUTO_INCREMENT, fornr TINYINT not null , forid TINYINT not null , topic VARCHAR (50) not null , nick VARCHAR (30) not null , email VARCHAR (50) not null , message LONGTEXT not null , date TINYINT not null , PRIMARY KEY (ID), INDEX (ID)) "))
    echo mysql_error();

    //forumnummer aktualisieren...
    if(!mysql_query("INSERT INTO `forumnummer` (`forid`) VALUES('')"))
    echo mysql_error();

    forname="forforname = "fornr";
    //Tabelle mit dem ersten daten ausfüllen...
    $temp = mysql_query("INSERT INTO forname(fornr,topic)VALUES(forname (fornr, topic) VALUES(forum, $topic)");

    if(!$temp)
    echo mysql_error();

    //Ausgabe dass das Forum erstellt wurde...
    echo "Ihr Thema wurde erstellt<br>Bitte klicken sie <a href=choosefor.php>hier</a> um zur Forenauswahl zu gelangen...";
    }

    [.....]

    mfg



  • da kommt aber immer noch keine Spalte namens test drin vor 😉



  • held.. in das Textfeld auf der Seite (das wo da <form> steht)
    da hab ich in die erste spalte, also topic eingetragen: test
    und da meckert er drüber...



  • Ich seh zwar auch nirgends als spaltenname $topic, aber versuch mal bei den Werten die du einfügst immer ' ' außen rum zu machen!



  • ein insert befehl geht so

    INSERT INTO Store_Information (store_name, Date)
    VALUES ('Los Angeles', 'Jan-10-1999')

    (mal eben geklaut)

    daß heißt: bei der tabelle keine tüttel, ebenso bei den tabellenspaltennamen nicht, aber bei den values schon, nämlich einfache, um flenders aussage nochmal zu untermauern

    edit: vereinfacht

    achte auch noch auf die anzahl, die muss genau gleich sein

    [ Dieser Beitrag wurde am 20.01.2003 um 19:39 Uhr von elise editiert. ]


Anmelden zum Antworten