Frågan#1
belaPHP - besökarnas egna länkar
Skriptet låter besökarna skicka in och visa sina favoritlänkar på din hemsida. Liknande skript används på tex tilja.net och jesper.nu.
Koden kan förbättras, diskutera detta här.
Skriptet består av fyra filer:
v.php3
Kod för att visa länkarna. (Inkludera på din hemsida.)
<HTML>
<! () [url="http://www.nic-sys.se"]www.nic-sys.se[/url] >
<HEAD>
</HEAD>
<BODY>
Besökarnas hemsidor:<br>
<?
$fp = fopen("links.txt", 'r');
$antal=fgets($fp,1024);
for($i=0;$i<$antal;$i++){
$link=fgets($fp,255);
$text=fgets($fp,255);
echo "<a href='http://$link'>$text</a><br>";
}
?>
<BR>
<A HREF="s.html">Lägg till din egen länk!</A>
</BODY>
</HTML>
s.html
Sida för att skicka in nya länkar. (Modifiera HTML-koden så den passar din design.)
<HTML>
<! () [url="http://www.nic-sys.se"]www.nic-sys.se[/url] >
<HEAD>
</HEAD>
<BODY>
<FORM METHOD="POST" ACTION="i.php3">
Skriv in länk, typ "www.nic-sys.se":<INPUT NAME="link"><br>
Skriv beskrivning, typ "Min nyhetshemsida":<INPUT NAME="text"><br>
<INPUT TYPE="submit" VALUE="Skicka"><br>
</FORM>
</BODY>
</HTML>
i.php3
Sidan som lägger till länken i filen links.txt.
<?
//
// () [url="http://www.nic-sys.se"]www.nic-sys.se[/url]
//
// Tar bort HTML och annat junk.
$link=htmlspecialchars($link);
$link=stripslashes($link);
$link=str_replace("\n","",$link);
$text=htmlspecialchars($text);
$text=stripslashes($text);
$text=str_replace("\n","",$text);
//
// Sparar senaste länken överst
$fp = fopen("links.txt", 'r');
$antal=fgets($fp,255);
for($i=0;$i<$antal;$i++){
$alink[$i]=fgets($fp,255);
$atext[$i]=fgets($fp,255);
}
fclose($fp);
$fp = fopen("links.txt", 'w');
fputs($fp,"$antal");
fputs($fp,"$link\n");
fputs($fp,"$text\n");
for($i=0;$i<$antal-1;$i++){
fputs($fp,"$alink[$i]");
fputs($fp,"$atext[$i]");
}
fclose($fp);
//
// "Hoppar tillbaka"
header("Location: v.php3");
?>
Filen links.txt måste innehålla data från början, typ
5
[url="http://www.nic-sys.se"]www.nic-sys.se[/url]
nicclas hemsida
[url="http://www.nic-sys.se"]www.nic-sys.se[/url]
nic-sys.se
[url="http://www.nic-sys.se"]www.nic-sys.se/news/[/url]
AllaNyheter.com
[url="http://www.nic-sys.se"]www.nic-sys.se/news/[/url]
GRATIS!
[url="http://www.nic-sys.se"]www.nic-sys.se[/url]
Grattis!
där 5 anger hur många länkar som finns i filen (och som kommer att visas)! Filen "links.txt" skall vara skrivbar från PHP ("chmod 777 links.txt").
/nicclas