Avatar billede davidskp Nybegynder
25. januar 2005 - 16:54 Der er 8 kommentarer og
1 løsning

MySQL-begynder ønsker hjælp

Jeg er lige begyndt at leje med MYSQL og har prøvet at lave et nyheds script.

Jag har lavet en tabel kaldet "nyheder" med "id" "overskrift" "dato" og "nyhed"

Jeg har så følgende 2 filer:

---------- add.php ----------
<html>
<head>
</head>
<body>

<form enctype="multipart/form-data" action="save.php" method="post">
<input type="text" name="overskrift">
<br>
<textarea name="nyhed"></textarea>
<br>
<input type="submit" name="Submit" value="Send">
</form>

</body>
</html>


---------- save.php ----------
<html>
<head>
</head>
<body>

<?
$connection = mysql_connect("localhost","root","");
mysql_select_db("nyheder", $connection);

$dato = date('d.m.Y H:i');
mysql_query("INSERT INTO nyheder (overskrift, dato, nyhed) VALUES ('$overskrift', '$dato', '$nyhed')") OR DIE (mysql_error());
mysql_close;
?>

</body>
</html>

------------------

Når jeg så prøver at lægge en nyhed ind i databasen er det kun datoen der bliver gemt men hverken overskriften eller nyheden er der...hvad gør jeg forkert?

Håber i kan hjælpe MySQL newbien her :)

/dave
Avatar billede flash-man Nybegynder
25. januar 2005 - 16:58 #1
mysql_query("INSERT INTO nyheder (overskrift, dato, nyhed) VALUES ('$_GET[overskrift]', '$dato', '$_GET[nyhed]')") OR DIE (mysql_error());

Prøv denne linje i stedet for...Kan være globals er slået fra.
Avatar billede hmortensen Nybegynder
25. januar 2005 - 16:58 #2
Ja, det er faktisk et php problem du har.
Din server benytter register_globals off, hvilket også er bedst sikkerhedsmæssigt.

Så når du skal ha fat i en post variabel, skal du hente den sådan her:
$_POST['navn'].

Så din sætning vil blive noget i den her retning:

mysql_query("INSERT INTO nyheder (overskrift, dato, nyhed) VALUES ('".$_POST['overskrift']."', '$dato', '".$_POST['nyhed']."')") OR DIE (mysql_error());
Avatar billede Slater Ekspert
25. januar 2005 - 16:58 #3
Prøv at bruge $_POST['overskrift'] i stedet for bare $overskrift... og det samme med nyhed :)
Avatar billede Slater Ekspert
25. januar 2005 - 16:59 #4
Åh, jeg elsker disse kampe på millisekunder :P
Avatar billede hmortensen Nybegynder
25. januar 2005 - 16:59 #5
flash-man, det er en post og ikke en get form.
Avatar billede flash-man Nybegynder
25. januar 2005 - 17:00 #6
hmortensen...nåh ja, det har du ret i, min fejl :S
Avatar billede davidskp Nybegynder
25. januar 2005 - 17:29 #7
Det var godt nok hurtige svar :) Det er mig som er super glemsom - jeg har tidligere selv slået register_globals fra...men nu virker det hele som det skal - mange tak for hjælpen begge to. Hvem vil have points?
Avatar billede davidskp Nybegynder
25. januar 2005 - 17:33 #8
hov ser lige at i faktisk er 3 der har svaret...tak for hjælpen alle 3 ;)
Avatar billede hmortensen Nybegynder
25. januar 2005 - 17:34 #9
Det var så lidt
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
Computerworld tilbyder specialiserede kurser i database-management

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