<style type="text/css">
.link_tabel{
background-color: #dddddd;
border: 1px solid #000000;
width: 50%;
font-family: verdana, arial;
font-size: 75%;
}
.link_catogorie{
background-color: #3399cc;
border-bottom: 1px solid #000000;
}
a{
text-decoration: none;
color: #000000;
}
a:hover{
color: #3399cc;
}
input{
border: 1px solid #000000;
}
</style>
<?php
//url controle funtie (met dank aan FangorN's script:)
function control_url($in) {
$start_url = "(http(s)?\:\/\/)?"; // start URL
$punten = "([\w_-]{2,}\.)+"; // een of meer delen met een . aan het einde
$laatste_deel = "([\w_-]{2,})"; // laatste deel bevat geen punt
$user = "((\/)(\~)[\w_-]+)?((\/)[\w_-]+)*"; // evt subdirectories - evt met user ~
$eind = "((\/)|(\/)[\w_-]+\.[\w]{2,})?"; // evt eindigend op een slash of slash+file+extensie
$qstring1 = "((\?[\w_-]+\=([^\#]+)){0,1}"; // querystring - eerste argument (?a=b)
$qstring2 = "(\&[\w_-]+\=([^\#]+))*)?"; // querystring - volgende argumenten (&c=d)
$bkmrk = "(#[\w_-]+)?"; // bookmark
$exp = "/^".$start_url.$punten.$laatste_deel.$user.$eind.$qstring1.$qstring2.$bkmrk."$/i";
}
$bestand = "links.txt"; //bestand waar links in opgeslagen worden
$fp = fopen($bestand, "r"); $catogorie = array("Winkels", "Startpagina's", "Hobbysites"); //aantal en naam van de catogorie(kun je zo een bijzetten en het script doet de rest zelf) $links_totaal = explode("*&!#@", $links); //explodeer hier de links per catogorie
foreach($catogorie as $key => $value){ //geef linktabellen weer, met links en catogorie
$links_in_catogorie = explode("?-`~%", $links_totaal[$key]); //split hier de links per catogorie per link ?>
<table class="link_tabel" cellspacing="0" cellpadding="2">
<tr>
<td
class="link_catogorie"><?php
echo $value ?
></td
> </tr>
<tr>
<td><?php
for($i = 0; $i < count($links_in_catogorie)-1; $i ++){ //laat alle links per catogorie zien en zet ze onder elkaar echo "- <a href=\"".$links_in_catogorie[$i]."\" target=\"blank\">".$links_in_catogorie[$i]."</a><br>"; }
?></td>
</tr>
</table><br>
<?php
}
?>
<form method="post">
<table class="link_tabel" cellspacing="0" cellpadding="2">
<tr>
<td class="link_catogorie" colspan="2">Link toevoegen</td>
</tr>
<tr>
<td>Link:</td>
<td><input type="text" name="adres" value="http://" size="40">
<?php
if(isset($_POST['verzenden'])){ //als er een url is verzonden if(control_url($_POST['adres'])) { //url controleren
//wat er weer ingevoegt moet worden(alles maar met nieuwe link)
for($i = 0; $i < count($catogorie); $i++) {
if($i == $_POST['catogorie']){ //$_POST['catogorie'] is een nummer en dus makkelijk
$invoegen.=$_POST['adres']."?-`~%".$links_totaal[$_POST['catogorie']]."*&!#@";
}
else
{
$invoegen.= $links_totaal[$i]."*&!#@"; //array weer invoegen plus het scheidingteken
}
}
$fp = fopen($bestand, "w"); fputs($fp, $invoegen); //weer invoegen met link header("location:".$_SERVER['PHP_SELF']);
}
else //url is fout, geen http:// of geen .nl i.o.d
{
echo "<font color=\"red\">Url klopt niet!</p>"; }
}
?>
</td>
</tr>
<tr>
<td>Categorie:</td>
<td><select name="catogorie"><?php //laat rubrieklijst zien
foreach($catogorie as $key => $value){
echo "<option value=".$key.">".$value."</option>"; }
?></select></td>
</tr>
<tr>
<td><!-- No contents --></td>
<td><input type="submit" name="verzenden" value="Verzenden"></td>
</tr>
</table>
</form>