Gå til innhold

[Løst]Lager en simpel gjestebok, trenger litt hjelp.


Anbefalte innlegg

Skrevet

post_gb.php

<?php
echo ' 
<form method="post" action="?page=nygb">
<strong>Navn:</strong><br />
<input type="text" name="Navn" size="40" /><br  />
<strong>Melding(max 255 tegn):</strong><br />
<textarea name="Melding" cols=40 rows=6></textarea><br  />
<br  />
<input type="submit" value="Post">';
include  'dbconnect.php';
$Antallpost = 0;
$sql = "SELECT * FROM Gjestebok
		ORDER BY MsgNR DESC";
$resultat = mysql_query($sql);

	echo "<h3> Gjestebok: </h3>";
while ($row = mysql_fetch_array($resultat)) {
		$Antallpost = $Antallpost+1;
	echo "<strong>{$row['Navn']}:</strong>
		  <br />  <p>{$row['Melding']}</p>
		  <br />
		  <hr />
		  <br />";


}
	if ($Antallpost > 0) echo ("Det er opprettet $Antallpost gjestebok innlegg.");
	else echo ("Det er ikke blitt skrevet i gjesteboken enda.");
	echo ("<br />");

?>

nygb.php

<?php
include  'dbconnect.php';

$Navn = $_POST['Navn'];
$Melding = $_POST['Melding'];

if(empty($Navn) || empty($Melding))
{
echo "Fyll inn alle boksene";
} 
elseif(!empty($Navn) && !empty($Melding))
{ 


$mysql_sporring = 'INSERT INTO Gjestebok (Navn, Melding)
VALUES ("' . mysql_real_escape_string($Navn) . '", "' . mysql_real_escape_string($Melding) . '")';
$resultat = mysql_query($mysql_sporring);
echo ("Ditt innlegg er lagt til. <a href='?page=post_gb'>Gå til gjesteboken.</a>");
}

?>

 

Det funka når jeg la inn den første posten. men etter det så får jeg ikke lagt inn mer via skjemaet.. kan jo manuelt legge inn i databasen, men det er jo ikke det jeg vil. Noen forslag?

 

Det er sikkert litt typos etc der, se bort ifra det, er koden jeg lurer på.

Videoannonse
Annonse
Skrevet
hva skjer når du legger inn den 2 posten?

 

Jeg får opp meldingen at innlegget er blitt lagt til, men det er ingen forandringer. Verken på siden eller i tabellen.

Skrevet (endret)

gjør om linjen

 

$resultat = mysql_query($mysql_sporring);

 

til

 

$resultat = mysql_query($mysql_sporring) or die(mysql_errno($link) . ": " . mysql_error($link) . "\n");

 

hvor link er

 

$link = mysql_connect("localhost", "mysql_user", "mysql_password");

mysql_select_db("nonexistentdb", $link);

 

da får du detaljert feilmelding.

Endret av TheGreatOne
Skrevet (endret)

er id (eller hva du kaller den) auto_increment? ellers må du sette den til det.

 

eksempel

 

CREATE TABLE `student` ( `student_id` INT( 3 ) NOT NULL AUTO_INCREMENT, `name` VARCHAR( 25 ) NOT NULL , `email` VARCHAR( 50 ) NOT NULL , UNIQUE ( `student_id` ) );

Endret av TheGreatOne
Skrevet

Ser ut til at det er det som er problemet ja, trodde jeg hadde satt den til det.

 

Men den var vist ikke det. Dårlig feilsøking av meg. Takk for hjelp.

 

Works like a charm nå ;)

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...