Avatar billede langkiller Nybegynder
02. november 2011 - 22:14 Der er 4 kommentarer og
1 løsning

Kan ikke sætte data ind i db - ingen fejlmeddelelser

Har en html form der sender nogle data videre til denne side, al data bliver modtaget osv.
Men kan ikke få dataen ind i min database. Jeg får ingen fejlmeddelelser, jeg har connectet til db'en og har ikke skrevet forkert navn til nogle af felterne. Håber nogen kan gennemskue hvad der er galt. Her er den "relevante del af koden:


$overskriftdk = $_POST["overskriftdk"];
        $overskriften = $_POST["overskriften"];   
        $indholddk = $_POST["indholddk"];
        $indholden = $_POST["indholden"];
        $dag = $_POST["dag"];
        $maaned = $_POST["maaned"];
        $aar = $_POST["aar"];
        $minut = $_POST["minut"];
        $time = $_POST["time"];
        $sted = $_POST["sted"];
        $timestamp = mktime($time, $minut, 0, $maaned, $dag, $aar);
        $menutitel = "".$sted." ".$aar."";

        $errtid = "";
        $erroverskrift = "";
        $errindhold = "";
        $errsted = "";
        $error = 0;

       
            if ($dag == "" || $maaned == "" || $aar == "" || $time == "" || $minut == "")
                { $error++; $errtid = "true";}
            if ($overskriftdk == "" || $overskriften == "")
                { $error++; $erroverskrift = "true"; }           
            if ($indholddk == "" || $indholden == "")
                { $error++; $errindhold = "true"; }
            if ($sted == "")
                { $error++; $errsted = "true"; }



                if ($error > 0) 
                {
                header("location: opret.php?opret=reunion&errtid=".$errtid."&erroverskrift=".$erroverskrift."&errindhold=".$errindhold."&errsted=".$errsted."&err=$error");
                }
                else
                {   
               
                    // INDSÆTTER DATA I DATABASEN
                    mysql_query("INSERT INTO reunions (overskriftdk,overskriften,indholddk,indholden,timestamp,sted,menutitel) VALUES ('$overskriftdk','$overskriften','$indholddk','$indholden','$timestamp','$sted','$menutitel')");





Har udeladt resten da det ikke er relevant, blot en slags "kvittering" ala. handlingen er blevet udført..
Avatar billede net-freak Nybegynder
02. november 2011 - 22:35 #1
Du kan prøve at tilføje:

or die(mysql_error());

efter din query for at få mysql error.

mysql_query("INSERT INTO reunions (overskriftdk,overskriften,indholddk,indholden,timestamp,sted,menutitel) VALUES ('$overskriftdk','$overskriften','$indholddk','$indholden','$timestamp','$sted','$menutitel')") or die(mysql_error());
Avatar billede langkiller Nybegynder
02. november 2011 - 22:38 #2
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 't been written in english yet.','1320227100','Denmark','Denmark 2011')' at line 1
Avatar billede net-freak Nybegynder
02. november 2011 - 23:33 #3
Prøv at smække mysql_real_escape_string() rundt om dine post variabler, altså som følgende:

$overskriften = mysql_real_escape_string($_POST["overskriften"]);

Det skulle gerne funke, plus du sikrer dig selv imod SQL injections.
Avatar billede langkiller Nybegynder
03. november 2011 - 00:09 #4
Ja det virkede sørme :)

smid et svar
Avatar billede net-freak Nybegynder
03. november 2011 - 00:26 #5
Er glad for det virkede for dig.
Årsagen var at du havde unescaped " ' " i din tekst du sætter ind, så PHP vil tro du er i gang med at bryde koden. Det kan fixes med ovenstående function, eller du kan også tilføje addslashes() .. Personligt ville jeg nok bruge begge functions da man ikke kan få for meget sikkerhed ;)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester