Just nu i M3-nätverket
Jump to content

html formulär till databas via php/mysql?


hostname81

Recommended Posts

Har skapat en databas via phpMyAdmin och sedan har jag ett html formulär med samma fält som i tabellen. När jag klickar på submit i html formuläret jag har valt att värdena skall skickas till en php fil som lägger till dem i tabellen. När jag klickar på submit i html formuläret så det enda som händer är att jag får en fråga om jag skall öppna eller spara php filen, vad är fel?

Jag har skrivit följande rad

<form id="form1" name="form1" method="post" action="add2.php">

i formuläret för att skicka till php filen och samma skriving fungerar på de formmail script jag använder i andra formulär och man gör väl på samma sätt här.

Link to comment
Share on other sites

Jag kör filerna lokalt på datorn och använder wampserver. Nu när jag testade igen så fick jag inte den frågan men istället ett antal fel på php filen.

<?php
$link = mysql_connect('localhost','användarnamn','lösenord','kontakta');
$sql = "INSERT INTO kontakta (ID, Fnamn, Efternamn, Mail, Telefon, Mobil)  	
VALUES  ('' .  $ID  . ''  , '' .  $Fnamn  . '' , '' . $Efternamn . '', '' . $Mail . '',  '' . $Telefon . '', '' . $Mobil . '')";

mysql_query($link, $sql);

$linkmysql_close($link);

// adress att skicka till, kan vara en fil eller en hel url
$url = 'http://www.expressen.se';
header('Location:' . $url);
?>

Link to comment
Share on other sites

$link = mysql_connect... ska se ut så här:

 

$link = mysql_connect('localhost', 'användarnamn', 'lösenord');

mysql_select_db('kontakta'); // Om din databas heter 'kontakta'.

 

Raden $sql = ... ska se ut så här:

 

$sql = "INSERT INTO kontakta (ID, Fnamn, Efternamn, Mail, Telefon, Mobil) VALUES ('$ID', '$FNamn', '$Efternamn', '$Mail', '$Telefon', '$Mobil')";

 

Raden mysql_query... ska se ut så här:

 

mysql_query($sql);

 

Raden $linkmysql... ska se ut så här:

 

mysql_close($link);

Link to comment
Share on other sites

Fortfarande får jag följande fel

Notice: Undefined variable: ID in C:\wamp\www\add2.php on line 5

 

Notice: Undefined variable: FNamn in C:\wamp\www\add2.php on line 5

 

Notice: Undefined variable: Efternamn in C:\wamp\www\add2.php on line 5

 

Notice: Undefined variable: Mail in C:\wamp\www\add2.php on line 5

 

Notice: Undefined variable: Telefon in C:\wamp\www\add2.php on line 5

 

Notice: Undefined variable: Mobil in C:\wamp\www\add2.php on line 5

 

Notice: Undefined variable: mysql_close in C:\wamp\www\add2.php on line 9

 

Fatal error: Function name must be a string in C:\wamp\www\add2.php on line 9

 

 

<?php
$link = mysql_connect('localhost','pontus','fire8111');
mysql_select_db('kontakta');
$sql = "INSERT INTO kontakta (ID, Fnamn, Efternamn, Mail, Telefon, Mobil); 
VALUES ('$ID','$FNamn','$Efternamn','$Mail','$Telefon','$Mobil')";

mysql_query($sql);

$mysql_close($link);

// adress att skicka till, kan vara en fil eller en hel url
$url = 'http://www.expressen.se';
header('Location:' . $url);
?>

Link to comment
Share on other sites

Det ska vara mysql_close($link); inte $mysql_close...

 

När du tagit bort dollartecknet där så kan du köra skriptet men du kommer inte att få in några värden i databasen eftersom du inte gett något värde till $ID, $FNamn med flera... Lägg till följande före $sql = ...

 

$ID = mysql_real_escape_string($_POST['ID']);

$FNamn = mysql_real_escape_string($_POST['FNamn']);

 

osv för varje sak du vill lägga in i databasen.

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.



×
×
  • Create New...