Gæstebog guiden.

Her kan du få hjælp og stille spørgsmål til PHP!
Besvar
balko
Begynder
Indlæg:4
Tilmeldt:10. sep 2012, 14:38
Gæstebog guiden.

Indlæg af balko » 10. sep 2012, 14:43

Jeg fulgte jeres gæstebog guide( http://www.youtube.com/watch?v=qksngg3c ... ure=relmfu ), og det virker helt fint. Jeg vil dog gerne lave nogle få ændringer.

Vil gerne have den til at skrive det ud på en anden side, istedet for samme sted hvor du skriver selve kommentarene. Og så være en "bjælke" imellem hver kommentar. Og muligvis en dato. hvis nogle kan linke til noget. eller muligvis lige redigere lidt i koden ville jeg være taknemmelig.

Kode: Vælg alt

    <html>
    <head>
    <title>Fælles Forum</title>
    </head>
    <body>
    <form action="skriv.php" method="POST">
    <br>
     Navn <input type="text" name="fornavn" />
    <br>
	<br>
    E_mail <input type="text" name="email" />
    <br>
	<br>
    <p>Besked<p> <textarea rows="7" name="kommentar" cols="40"></textarea>
    <br>
	<br>
    Adresse <input type="text" name="adresse" />
	<br>
	<br>
	Mobil nr <input type="text" name="mobil" size="12" maxlength="10" 
	<br>
	<br>
	<br>
    <input type="submit" value="Save" />
	<input type="reset" value="reset"  />

	
    </form>
	<?php 
	$fil = fopen("TXTfil.txt", "r") or exit("fejl");
	
		while(!feof($fil)) {
			echo fgets($fil) ."<br/>";
			}
			fclose($fil);
	?>
    </body>
    </html>

Kode: Vælg alt

<html>
	
	<head>
	<meta http-equiv="Content-type" content="text/html; charset=UTF-8">
	<Title>Fælles forum</title>
	</head>
	
<body>
<?php

$fornavn = $_POST["fornavn"];
$email = $_POST["email"];
$kommentar = $_POST["kommentar"];
$adresse = $_POST["adresse"];
$mobil = $_POST["mobil"];

$fil = fopen("TXTfil.txt", "a+") or exit("fejl");

fwrite($fil , $fornavn."\n".$email."\n".$kommentar."\n".$adresse."\n".$mobil."\n");

fclose($fil);
?>

</body>
</html>


Brugeravatar
ThomasI
Grundlægger
Grundlægger
Indlæg:1528
Tilmeldt:28. dec 2010, 10:49

Re: Gæstebog guiden.

Indlæg af ThomasI » 10. sep 2012, 15:40

Det med at det skal være en anden side er nemt klaret...der flytter du bare den kode som printer teksten ud til en anden side og så vil den blive vist der istedet....

med hensyn til denne bjælke kan du lave blot lave en variable i din php-kode med værdien = date(); og derefter indsætte denne variable sammen med kommentaren i en ny kolonne...

På den måde vil du få en dato sat ind sammen med kommentaren og kan altså derved også trække den ud og vise den senere...

Jeg er sikker på der er masser kommentar funktioner at finde via google hvor der bruges date() til datoen...så det skulle være til at finde :D

balko
Begynder
Indlæg:4
Tilmeldt:10. sep 2012, 14:38

Re: Gæstebog guiden.

Indlæg af balko » 10. sep 2012, 17:46

EDIT: Tak for hjælpen. Fik det hele til at gøre hvad jeg ville. Undtagen en enkel ting.

Vil gerne kunne gå frem til selve gæstebogen ved hjælp af en button, uden at skulle blive nødt til at skrive noget. Da jeg har skrevet at den ikke må gå videre uden der er skrevet noget i "navn og kommentar" . nok nemmere at vise hvad jeg mener.

Kode: Vælg alt

 <html>
    <head>
    <title>Fælles Forum</title>
    </head>
    <body>                        
    <form action="skriv.php" method="POST">
	<br>
     Navn <input type="text" name="fornavn" />
    <br>
	<br>
    E_mail <input type="text" name="email" />
    <br>
	<br>
    <p>Besked<p> <textarea rows="7" name="kommentar" cols="40"></textarea>
    <br>
	<br>
    Adresse <input type="text" "Adreese" name="adresse" />
	<br>
	<br>
	Mobil nr <input type="text" name="mobil" size="12" maxlength="8" 
	<br>
	<br>
	<br>
    <input type="submit" value="Save" />
	<input type="reset" value="reset"  />
	<form action="skriv.php" method="GET">
    <INPUT TYPE="submit" VALUE="Read all messages">  //Denne skulle gerne kun gå frem og vise selve gæstebogen.. Det den gør nu, er det samme som Save knappen. 
	</form>
	<FORM METHOD="GET" ACTION="Login.php"> <INPUT TYPE="submit" VALUE="Logout"> </FORM> 
	<form action="index.php" method="GET">
	<input type="submit" value="Delete all messages" name = "delete">
	</form>
	<?php
	if (isset($_GET['delete']))
	{
	$handle = fopen("TXTfil.txt", "w");
	fclose($handle);
	echo "Alle kommentare slettet!";
	}
	?>
	
	
	</body>
    </html>
Her er det med hvis navn og kommentar er tomt.

Kode: Vælg alt

<html>
	
	<head>
	<meta http-equiv="Content-type" content="text/html; charset=UTF-8">
	<Title>Fælles forum</title>
	<h1>Fælles Forum</h1>
	</head>
	
<body>
<?php

$dato=date("d F Y H:i:s A");
$fornavn = $_POST["fornavn"];
$email = $_POST["email"];
$kommentar = $_POST["kommentar"];
$adresse = $_POST["adresse"];
$mobil = $_POST["mobil"];

$fil = fopen("TXTfil.txt", "a+") or exit("fejl");

fwrite  ($fil, $dato."\n".  $fornavn."\n".$email."\n".$kommentar."\n".$adresse."\n".$mobil."\n"."\n");

fclose($fil);
?>
	<?php 
	if (empty($fornavn) || (empty($kommentar)))
	    {
		echo "Du mangler at indtaste Dit navn og/eller skrive en besked";
		exit;
		}
		
		
else
		
		
	$fil = fopen("TXTfil.txt", "r") or exit("fejl");
	
		while(!feof($fil)) {
			echo fgets($fil) ."<br/>";
			}
			fclose($fil);
	?>
	 
	<FORM>
<INPUT TYPE="button" value="Tilbage" onClick="parent.location='index.php'">
</FORM>
	
</body>
</html>


Brugeravatar
ThomasI
Grundlægger
Grundlægger
Indlæg:1528
Tilmeldt:28. dec 2010, 10:49

Re: Gæstebog guiden.

Indlæg af ThomasI » 11. sep 2012, 16:48

Du ku jo bare lave et link til den side hvor kommentarene vises - så behøver folk ikke skrive noget ind, men bare trykke på linket?

balko
Begynder
Indlæg:4
Tilmeldt:10. sep 2012, 14:38

Re: Gæstebog guiden.

Indlæg af balko » 11. sep 2012, 18:06

Når jeg laver et link, kommer den med fejl også.

Brugeravatar
ThomasI
Grundlægger
Grundlægger
Indlæg:1528
Tilmeldt:28. dec 2010, 10:49

Re: Gæstebog guiden.

Indlæg af ThomasI » 11. sep 2012, 18:36

hvad siger fejlen? :)

balko
Begynder
Indlæg:4
Tilmeldt:10. sep 2012, 14:38

Re: Gæstebog guiden.

Indlæg af balko » 11. sep 2012, 19:41

Det er grundet denne

Kode: Vælg alt

if (empty($fornavn) || (empty($kommentar)))
       {
      echo "Du mangler at indtaste Dit navn og/eller skrive en besked";
      exit;
      }
At når jeg trykker på Read all messages, så skal den bare gå ind i gæstebogen. Men den opfører sig på samme måde som med send/save knappen

Plus den kommer med Undefined index. pga disse

Kode: Vælg alt

$dato=date("d F Y H:i:s A");
$fornavn = $_POST["fornavn"];
$email = $_POST["email"];
$kommentar = $_POST["kommentar"];
$adresse = $_POST["adresse"];
$mobil = $_POST["mobil"];
EDit. kunne selvfølgelig fjerne den undefined index fejl. ved at sætte @ foran.

Besvar