Gå til innhold

feil med gjestebok, hjelp noen?


Anbefalte innlegg

her er html-koden min:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta http-equiv="Content-Language" content="no-bok">
<title>datating.com</title>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<link href="./style.css" rel="stylesheet" type="text/css">
<style type="text/css">
p {color: #FFF}
p.margin {margin-left: 0.5cm}
p.margin {margin-right: 0.5cm}
</style>

</head>

<body>

<div class="container">

 <div id="header"></div>
 <div id="meny"><ul id="menu">
<li><a class="klasse1" href="#">Link1</a></li>
<li><a class="klasse1" href="#">Link2</a></li>
<li><a class="klasse1" href="#">Link3</a></li>
<li><a class="klasse1" href="#">Link4</a></li>
<li><a class="klasse1" href="#">Link5</a></li>
<li><a class="klasse1" href="#">Link6</a></li>
</ul></div>
 <div id="innhold"><p class="margin">
<?php 

echo "<form method=post action=index.php>"; 

if ($nick && $name && $e-mail && $say) 
{ 

$fh = fopen("gjestebok.txt", "a"); 

fwrite($fh, "$nick;"); 
fwrite($fh, "$name;"); 
fwrite($fh, "$e-mail;"); 
fwrite($fh, "$say"); 
fwrite($fh, "\n"); 
fclose($fh); } 

echo "<table>"; 
echo "<tr><td>Nick</td><td>:</td><td><input type=text name=nick>"; 
echo "<tr><td>Name</td><td>:</td><td><input type=text name=name></td></tr>"; 
echo "<tr><td>E-mail</td><td>:</td><td><input type=text name=e-mail></td>"; 
echo "<tr><td>What to say</td><td>:</td><td><input type=text name=say></td>"; 
echo "<td colspan=2><input type=submit name=add value=Add></td></tr>"; 
echo "</form></table><br>"; 

$antall_navn = 0; 
if ($fh = fopen('gjestebok.txt','r')){ 
while (! feof($fh)) { 
if (fgets($fh,1048576)) { 
 $antall_navn++; }}} 
  print "<p>There are $antall_navn posts.</p>"; 


echo "<table border=1 cellpadding=4 cellspacing=0>"; 
echo "<tr> 
<td bgcolor=lightgrey>Nick/Name</td> 
<td bgcolor=lightgrey>E-mail</td> 
<td bgcolor=lightgrey>Said</td> 
</tr>"; 

$array = file("gjestebok.txt"); 

$sorter = sort($array); 

foreach ($array as $linje) 
{ 
$del=split(";",$linje); 
echo "<tr> 
<td>$del[0]/ $del[1]</td> 
<td><a href=mailto:$del[2]>$del[2]</a></td> 
<td>$del[3]</td> 
</tr>"; } 
?> 
</table></p></div>
 <div id="footer">
<?php
include("count.php");
?></div>

</div>

</div>

</body>

</html>

 

her er bare php-koden til gjesteboken:

<?php 

echo "<form method=post action=index.php>"; 

if ($nick && $name && $e-mail && $say) 
{ 

$fh = fopen("gjestebok.txt", "a"); 

fwrite($fh, "$nick;"); 
fwrite($fh, "$name;"); 
fwrite($fh, "$e-mail;"); 
fwrite($fh, "$say"); 
fwrite($fh, "\n"); 
fclose($fh); } 

echo "<table>"; 
echo "<tr><td>Nick</td><td>:</td><td><input type=text name=nick>"; 
echo "<tr><td>Name</td><td>:</td><td><input type=text name=name></td></tr>"; 
echo "<tr><td>E-mail</td><td>:</td><td><input type=text name=e-mail></td>"; 
echo "<tr><td>What to say</td><td>:</td><td><input type=text name=say></td>"; 
echo "<td colspan=2><input type=submit name=add value=Add></td></tr>"; 
echo "</form></table><br>"; 

$antall_navn = 0; 
if ($fh = fopen('gjestebok.txt','r')){ 
while (! feof($fh)) { 
if (fgets($fh,1048576)) { 
 $antall_navn++; }}} 
  print "<p>There are $antall_navn posts.</p>"; 


echo "<table border=1 cellpadding=4 cellspacing=0>"; 
echo "<tr> 
<td bgcolor=lightgrey>Nick/Name</td> 
<td bgcolor=lightgrey>E-mail</td> 
<td bgcolor=lightgrey>Said</td> 
</tr>"; 

$array = file("gjestebok.txt"); 

$sorter = sort($array); 

foreach ($array as $linje) 
{ 
$del=split(";",$linje); 
echo "<tr> 
<td>$del[0]/ $del[1]</td> 
<td><a href=mailto:$del[2]>$del[2]</a></td> 
<td>$del[3]</td> 
</tr>"; } 
?> 
</table></p></div>
 <div id="footer">
<?php
include("count.php");
?>

 

 

- men når jeg uploader den til nettet visees index.php slik ut:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta http-equiv="Content-Language" content="no-bok">
<title>datating.com</title>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<link href="./style.css" rel="stylesheet" type="text/css">
<style type="text/css">
p {color: #FFF}
p.margin {margin-left: 0.5cm}
p.margin {margin-right: 0.5cm}
</style>

</head>

<body>

<div class="container">

 <div id="header"></div>
 <div id="meny"><ul id="menu">
<li><a class="klasse1" href="#">Link1</a></li>
<li><a class="klasse1" href="#">Link2</a></li>
<li><a class="klasse1" href="#">Link3</a></li>
<li><a class="klasse1" href="#">Link4</a></li>
<li><a class="klasse1" href="#">Link5</a></li>
<li><a class="klasse1" href="#">Link6</a></li>
</ul></div>
 <div id="innhold"><p class="margin">
<form method=post action=index.php><table><tr><td>Nick</td><td>:</td><td><input type=text name=nick><tr><td>Name</td><td>:</td><td><input type=text name=name></td></tr><tr><td>E-mail</td><td>:</td><td><input type=text name=e-mail></td><tr><td>What to say</td><td>:</td><td><input type=text name=say></td><td colspan=2><input type=submit name=add value=Add></td></tr></form></table><br><p>There are 0 posts.</p><table border=1 cellpadding=4 cellspacing=0><tr> 
<td bgcolor=lightgrey>Nick/Name</td> 
<td bgcolor=lightgrey>E-mail</td> 
<td bgcolor=lightgrey>Said</td> 
</tr> 
</table></p></div>
 <div id="footer">
<center>Denne siden har blitt vist <b>484</b> ganger</center>
</div>

</div>

</div>

</body>

</html>

 

noen som vet hva som er feil? har støtte for php og alt det der på webhotellet.

Lenke til kommentar
Videoannonse
Annonse

Feil:

 

1) Du bruker ikke " rundt verdiene dine i HTML. <input type=text name=nick> burde f.eks være <input type="text" name="nick">

 

2) <input type=text name=e-mail> er nok hovedårsaken til problemet. For det første kan du ikke bruke bindestrek i et variabelnavn og for det andre har du glemt " rundt "e-mail" (som burde hete noe annet f.eks "e_mail").

 

3) Er globale variabler slått på slik at du kan bruke variabelnavnene i stedet for å hente variablene fra en global array?

Lenke til kommentar
<?php 

echo "<form method=post action=index.php>"; 

if ($nick && $name && $e-mail && $say) 
{ 

$fh = fopen("gjestebok.txt", "a"); 

fwrite($fh, "$nick;"); 
fwrite($fh, "$name;"); 
fwrite($fh, "$e-mail;"); 
fwrite($fh, "$say"); 
fwrite($fh, "\n"); 
fclose($fh); } 

echo "<table>"; 
echo "<tr><td>Nick</td><td>:</td><td><input type=text name=nick>"; 
echo "<tr><td>Name</td><td>:</td><td><input type=text name=name></td></tr>"; 
echo "<tr><td>E-mail</td><td>:</td><td><input type=text name=e-mail></td>"; 
echo "<tr><td>What to say</td><td>:</td><td><input type=text name=say></td>"; 
echo "<td colspan=2><input type=submit name=add value=Add></td></tr>"; 
echo "</form></table><br>"; 

</p></div>
<div id="footer">
<?php
include("count.php");
?>

 

Som du sikkert ser, så er ikke $nick, $name osv satt.

Så hvordan kan den da begynne å kjøre, når if testen er avhengig av at de variablene er satt!

 

 

<?php 

echo "<form method=post action=".$_SERVER['PHP_SELF'].">"; 

$nick = $_POST['nick'];
$name = $_POST['name'];
$email = $_POST['email'];
$say = $_POST['say'];

if ($nick && $name && $email && $say) 
{ 

$fp = fopen("gjestebok.txt", "a+"); 

chmod("gjestebok.txt", 0777);


fwrite($fp, "$nick;"); 
fwrite($fp, "$name;"); 
fwrite($fp, "$email;"); 
fwrite($fp, "$say"); 
fwrite($fp, "\n"); 
fclose($fp); } 

echo "<table>"; 
echo '<tr><td>Nick</td><td>:</td><td><input type="text" name="nick">'; 
echo '<tr><td>Name</td><td>:</td><td><input type="text" name="name"></td></tr>'; 
echo '<tr><td>E-mail</td><td>:</td><td><input type="text" name="email"></td>'; 
echo '<tr><td>What to say</td><td>:</td><td><input type="text" name="say"></td>'; 
echo '<td colspan=2><input type="submit" name="add" value="Add"></td></tr>'; 
echo '</form></table><br>'; 

$antall_navn = 0; 
if ($fh = fopen('gjestebok.txt','r')){ 
while (! feof($fh)) { 
if (fgets($fh,1048576)) { 
 $antall_navn++; }}} 
  print "<p>There are $antall_navn posts.</p>"; 


echo "<table border=1 cellpadding=4 cellspacing=0>"; 
echo "<tr> 
<td bgcolor=lightgrey>Nick/Name</td> 
<td bgcolor=lightgrey>E-mail</td> 
<td bgcolor=lightgrey>Said</td> 
</tr>"; 

$array = file("gjestebok.txt"); 

$sorter = sort($array); 

foreach ($array as $linje) 
{ 
$del=split(";",$linje); 
echo "<tr> 
<td>$del[0]/ $del[1]</td> 
<td><a href=mailto:$del[2]>$del[2]</a></td> 
<td>$del[3]</td> 
</tr>"; } 
?>

</table>

Endret av robgar
Lenke til kommentar

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...