Avatar billede khalus Nybegynder
19. oktober 2005 - 23:14 Der er 9 kommentarer og
2 løsninger

Html form og PHP indsætning i MySQL db

Jeg har følgende html formular:

<form action="index.php?id=7" method="post">

Vælg en kategori
<p><input type="radio" name="kategori" value="nyttige" checked>
    Nyttige
<br><input type="radio" name="kategori" value="partnere">
    Partnere
<p />
Navn:<br>
<input type="text" name="navn">
<br>
URL:<br>
<input type="text" name="url" value="http://">
<input type="submit" value="Post indlæg">
<input type="reset" value="Slet felter">
</form>
<br><br><br>


Og følgende PHP script:

$kategori = $_REQUEST["kategori"];
$navn = $_REQUEST["navn"];
$url = $_REQUEST["url"];

if ($kategori == "nyttige") {
mysql_query ("INSERT INTO links (navnnyttige, nyttige) VALUES ($navn, $url)");
header("Location: index.php?id=7");
}
elseif ($kategori == "partnere") {
mysql_query ("INSERT INTO links (navnpartnere, partnere) VALUES ($navn, $url)");
header("Location: index.php?id=7");
}
else {
echo "DER ER NOGET GALT MED KODEN!";
}

Jeg kan ikke forstå hvorfor det ikke virker.

Når jeg selv lægger data ind via. PHPMyAdmin, kan jeg godt få det til at vise, og den tilføjer ikke til MySQL-tabellen med ovenstående kode.
Det er nok en "bonk mig selv i hovedet bagefter"- fejl, men nu har jeg grublet over den i lang tid, og enten er jeg bare utrolig dum, eller også mangler jeg noget ekspertviden, som jeg håber i har!
P.S (har det noget med isset at gøre?)
Avatar billede jaw Nybegynder
19. oktober 2005 - 23:16 #1
Prøv:

mysql_query ("INSERT INTO links (navnnyttige, nyttige) VALUES ('$navn', '$url')") or die(mysql_error());

Har smidt et par ' og tilføjet en die().
Avatar billede khalus Nybegynder
19. oktober 2005 - 23:19 #2
Virker stadig ikke..
Avatar billede jaw Nybegynder
19. oktober 2005 - 23:20 #3
Og skal det være rigtig godt, ville jeg:

mysql_query ("INSERT INTO links (navnnyttige, nyttige) VALUES ('".$_POST['navn']."', '".$_POST['url']."')") or die(mysql_error());
Avatar billede khalus Nybegynder
19. oktober 2005 - 23:22 #4
Ingen fangst. Tror du der er noget galt med if?
Avatar billede jaw Nybegynder
19. oktober 2005 - 23:24 #5
Måske, prøv:

if ($_POST['kategori'] == "nyttige") {

Du kan jo også indsætte nogen echo'er hist og her og se om der sker det du vil have der skal ske. Og hvis du bliver sendt rigtigt videre med dine headers() så er der jo ikke noget galt med if'erne.
Avatar billede khalus Nybegynder
19. oktober 2005 - 23:39 #6
Okay, det her er pinligt.
<form action="index.php?id=7" method="post">
Fejlen er, at jeg skal linke til gem.php?id=7 og ikke index.php?id=7
Læg et svar for ulejligheden...
Avatar billede jaw Nybegynder
19. oktober 2005 - 23:40 #7
Hehe, arj tag du dem bare selv, det er ok :)

Det kan smutte for selv den bedste...
Avatar billede khalus Nybegynder
19. oktober 2005 - 23:48 #8
Den bedste vil jeg nok nødigt kalde mig, men tak alligevel :) Synes nu alligevel du fortjener nogle point, for din hurtige, velskrevne og ivrige respons. Skal vi splitte 50-50?
Avatar billede jaw Nybegynder
19. oktober 2005 - 23:49 #9
Hvis du insisterer da :)
Avatar billede jaw Nybegynder
19. oktober 2005 - 23:51 #10
Mange tak for point så :)
Avatar billede khalus Nybegynder
19. oktober 2005 - 23:52 #11
Tak for svar :D
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