Jump to content

Mysql INSERT INTO help


magie

Recommended Posts

Hey i have made this guestbook, but everytime, it only put in the 1st info to the 1st field.

 

Here is the codes i used

laes.php

<html>
<title>Gæstebog</title>
<body bgcolor="#FFFFFF">

<form name="form1" method="get" action="opdater.php">

Læg venligst en besked
<br>
Navn:
<input type="text" name="navn" id="navn">
<br>
Email:
<input type"text" name"email" id="email">
<br>
Besked:
<textarea name"besked" rows="8" id="besked"></textarea>
<input type="submit" name"Submit" value="Indsend">

</form>

<hr>

Tak til de personer, som allerede har lagt en besked!

<hr>

<?php

$host = "localhost";
$user = "twossdow_magie";
$pass = "******";
$mb   = "twossdow_magie2";
$db = mysql_pconnect($host, $user, $pass);

mysql_select_db($mb,$db);

$result = mysql_query("SELECT * FROM indlaeg",$db);

while ($myrow = mysql_fetch_row($result)){

?>

Navn: <? echo $myrow[1] ?>
<br>
Email: <? echo $myrow[2] ?>
<br>
Besked: <? echo $myrow[3] ?>
<br>

<hr>

<?
}
?>


</body>
</html>

 

opdater.php

<?php

$host = "localhost";
$user = "twossdow_magie";
$pass = "280788";
$mb   = "twossdow_magie2";
$db = mysql_pconnect($host, $user, $pass);
$navn = $_REQUEST['navn'] ;
$email = $_REQUEST['email'] ;
$besked = $_REQUEST['besked'] ;

mysql_select_db($mb,$db);

$sql = "INSERT INTO indlaeg (`navn`,`email`,`besked`) "
  ."VALUES ('".$_POST["navn"]."', "
  ."VALUES ('".$_POST["besked"]."'), "
  ."'".$_POST["email"]."')";


$result = mysql_query($sql);

?>

<html>
<title>Opdater</title>
<body bgcolor="#FFFFFF">

Tak for det. <a href="laes.php">Klik for at vende tilbage til gæstebogen.</a>

</body>
</html>

Link to comment
https://forums.phpfreaks.com/topic/143368-mysql-insert-into-help/
Share on other sites

The query you use to insert the new entry seems to contain "VALUES" twice.  It sould be only once:

 

$sql = "INSERT INTO indlaeg (`navn`,`email`,`besked`) "
  ."VALUES ('".$_POST["navn"]."', "
  ."'".$_POST["besked"]."', "
  ."'".$_POST["email"]."')";

 

Also two remarks:

 

1. If your date of birth happens to be 28 of July 1988, you really need a more secure MySql password. ;-)

 

2. After someone writes an entry, he is taken to opdater.php.  Keep in mind that there is no checking on multiple attempts to post an entry there.  By simply pressing F5 over and over, I can easily spam multiple entries in your guestbook.

yea, here is the code

<?php

$host = "localhost";
$user = "twossdow_magie";
$pass = "******";
$mb   = "twossdow_magie2";
$db = mysql_pconnect($host, $user, $pass);
$navn = $_REQUEST['navn'] ;
$email = $_REQUEST['email'] ;
$besked = $_REQUEST['besked'] ;

mysql_select_db($mb,$db);

$sql = "INSERT INTO indlaeg (`navn`,`email`,`besked`) "
  ."VALUES ('".$_POST["navn"]."', "
  ."'".$_POST["besked"]."', "
  ."'".$_POST["email"]."')";


$result = mysql_query($sql);

?>

<html>
<title>Opdater</title>
<body bgcolor="#FFFFFF">

Tak for det. <a href="laes.php">Klik for at vende tilbage til gæstebogen.</a>

</body>
</html>

 

 

How do i get the mysql error code?

It just say error, when put this in

 

echo mysql_error($result);

 

Weird, it should normally also give a bit more info on which error.  But if there is an error, at least we know why no info is inserted.

 

If you replace

 

echo mysql_error($result);

 

by

 

echo $sql;

 

What does it say on the screen?

yep here it is

 

<?php

$host = "localhost";
$user = "twossdow_magie";
$pass = "280788";
$mb   = "twossdow_magie2";
$db = mysql_pconnect($host, $user, $pass);

mysql_select_db($mb,$db);

if(trim($_POST["navn"]) == "Plz fill this out")

$sql = "INSERT INTO indlaeg (`navn`,`email`,`besked`) "
  ."VALUES ('".$_POST["navn"]."', "
  ."'".$_POST["besked"]."', "
  ."'".$_POST["email"]."')";


$result = mysql_query($sql);
echo $sql;


?>

<html>
<title>Opdater</title>
<body bgcolor="#FFFFFF">

Tak for det. <a href="laes.php">Klik for at vende tilbage til gæstebogen.</a>

</body>
</html>

Archived

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

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.