Hejsa!
(se PHP-koden nedenfor)
Når der skrives i formen og trykkes send, sættes variablen $skriv til 1.
Derefter kontrolleres om både navn og besked er udfyldt. Hvis ikke,
kontrolleres de hver for sig, og feltet der ikke er udfyldt markeres som
Udfyld venligst.
Nu kommer der en underlig fejl: Hvis man provokerer siden i Explorer, og
trykker send flere gange, med kun et af felterne besked eller navn udfyldt,
så holder siden til sidst op med at virke - man kommer hele tiden tilbage
til en tom form, og man kan blive ved med at trykke send uden at der sker
noget.
I Opera er der dog ingen problemer... Underligt, for PHP afvikles jo på
serveren!?
Håber nogen kan regne fejlen ud.
Vhils Morten
Og her er så koden til min gæstebog:
<?php
if ($skriv=='1') {
if (($besked)&&($navn)) {
$db = mysql_connect("minsql","minbruger","minkode");
mysql_select_db("mindatabase",$db);
$insertSQL = "insert into gbog (navn, email, dato, besked)
values ('$navn', '$email', now(), '$besked')";
mysql_query($insertSQL);
echo '<p class="g1">$navn, du har indtastet:</p>';
echo '<p class="g2">E-mail: $email<br>Besked: $besked</p>';
} else {
?><form method=post action=<? echo $PHP_SELF; ?>><input type="hidden"
name="skriv" value="1"><?
if ($navn) {
?><p class="g1"><input type="text" name="navn" size=40 value="<? echo $navn;
?>"> Dit navn<br><?
} else {
?><p class="g1"><input type="text" name="navn" size=40> Dit navn (udfyld
venligst)<br><?
}
?><input type="text" name="email" size=40 value="<? echo $email; ?>"> Din
e-mail<br><?
if ($besked) {
?><textarea name="besked" rows=6 cols=50><? echo $besked; ?></textarea> Din
besked!!<br></p><?
} else {
?><textarea name="besked" rows=6 cols=50></textarea> Din besked (udfyld
venligst)<br></p><?
}
?>
<input type="submit">
<?
} } else {
?>
<form method="post" action=<? echo $PHP_SELF; ?>>
<p class="g1"><input type="hidden" name="skriv" value="1">
<input type="text" name="navn" size=40> Dit navn
<input type="text" name="email" size=40> Din e-mail
<textarea name="besked" rows=6 cols=50></textarea>
Din besked!</p>
<input type="submit"><?
}
?>
|