Avatar billede andreas.s.l Nybegynder
29. februar 2004 - 10:51 Der er 22 kommentarer og
1 løsning

Linksystem funktioner !

Hejsa jeg har et link system hvor jeg godt vil ha bygget noget til det jeg vil ha bygget til er:
Når en bruger tilføjer et link skal det sendes til en side først hvor det skal godkendes !

koderne:

addlink.inc.php:
<?php
    include("webvars.inc.php");

    $link = mysql_connect($hostname, $user, $password);
    mysql_select_db($database);

    $query = ("CREATE TABLE IF NOT EXISTS links (
        id int(11) NOT NULL auto_increment,
        host varchar(255) default NULL,
        ip varchar(15) default NULL,
        time varchar(255) NOT NULL default '',
        title varchar(100) NOT NULL default '',
        url varchar(75) NOT NULL default '',
        PRIMARY KEY  (id)
    ) TYPE=MyISAM;");

    mysql_query($query) or die("MySQL Error: " . mysql_error());
    $ip = $_SERVER["REMOTE_ADDR"];
    $host = gethostbyaddr($ip);
    list($utime, $time) = explode(" ", microtime());
    $title = htmlentities($_POST["title"], ENT_QUOTES);
    $url = htmlentities($_POST["url"], ENT_QUOTES);

    if ($title && $url) {
        if (mysql_result(mysql_query("SELECT COUNT(*) FROM links WHERE url='$url'"),0) == 1) {
        echo 'Linket er i databasen!';
        } else {
        $query = ("INSERT INTO links (id, host, ip, time, title, url) VALUES(NULL, '$host', '$ip', '$time', '$title', '$url');");
        mysql_query($query) or die("MySQL Error: " . mysql_error());
        $time = date("l d F Y @ H:i", $time);
        $headers = "From:    user@domain.com";    // your email
        $message = "Host: " . $host . "\nIP: " . $ip . "\nTime: " . $time . "\nTitle: " . $title . "\nURL: " . $url;
        $subject = "Link added on Domain.com"; // your webpage
        $to = "  user@domain.com";    // your email
        mail($to, $subject, $message, $headers);

   
    header("Location: links.php");
    }
}
?>

links.php:
<? include('ipbann.php') ?>
<body bgcolor="#003366" text="#FFCC00" link="#FFFFFF" vlink="#FFFFFF" alink="#FFFFFF">

<form action="addlink.inc.php" method="post">
    <table>
        <tr>
            <td>Title&nbsp;:&nbsp;</td>
            <td><input maxlength="100" name="title" type="text" /></td>
            <td>&nbsp;*</td>
        </tr>
        <tr>
            <td>URL&nbsp;:&nbsp;</td>
            <td><input maxlength="75" name="url" type="text" value="http://" /></td>
            <td>&nbsp;*</td>
        </tr>
        <tr>
            <td></td>
            <td><input type="submit" value="Tilføj" /><input type="reset" value="Blank" /></td>
            <td></td>
        </tr>
        <tr>
            <td colspan="3">&nbsp;</td>
        </tr>
        <tr>
            <td colspan="3">* = Skal udfyldes.</td>
        </tr>
               
<a href="linksne.php">Klik  Her for at se de andre links</a>
               
linksne.php:
<? include('ipbann.php') ?>
<body bgcolor="#003366" text="#FFCC00" link="#FFFFFF" vlink="#FFFFFF" alink="#FFFFFF">

                <tr>
                   
              </tr>


    </table>
</form>

<?php
    include("webvars.inc.php");

    $link = mysql_connect($hostname, $user, $password);
    mysql_select_db($database);
    $query = ("SELECT id, time, title, url FROM links ORDER BY title ASC;");
    $result = mysql_query($query) or die("MySQL Error: " . mysql_error());
    mysql_close($link);
   
    while ($row = mysql_fetch_array($result)) {
        list($utime, $time) = explode(" ", microtime());
       
        if ($time - $row["time"] <= 7 * 24 * 60 * 60) {
            $new = "&nbsp;NEW!";
        }
       
        else {
            $new = "";
        }
       
        $row["time"] = date("l d F Y @ H:i", $row["time"]);
        print("<a href=\"" . $row["url"] . "\" title=\"Added: " . $row["time"] . "\">" . $row["title"] . "</a>" . $new . "<br />\n");
    }
?>

<p>&nbsp;</p>


<a href="links.php">Klik  Her for at tilføje et link</a>

webvars.inc.php:

<?php
    $hostname = "******"; // din MySQL server addresse
    $user = "******"; // dit MySQL navn
    $password = "******"; // din MySQL kode
    $database = "*****"; // din MySQL database
?>


i kan se det på www.Scouit.1go.dk/linksys/


og jeg skal os bruge en slet funktion har prøvet og få en til at lave en før men kan ik få koden til at slette se selv www.Scouit.1go.dk/linksys/slet.php

koden

slet.php:

<?php
  include("webvars.inc.php");
  $link = mysql_connect($hostname, $user, $password);
  mysql_select_db($database);
  if (isset($_GET['deleteLink'])) {
  mysql_query("delete from links where id = '$deleteLink'");
  }
echo '<ul>';
  $res = mysql_query("SELECT * FROM links ORDER BY title ");
  while ($row = mysql_fetch_array($res)) {
echo'<li><font face="Verdana" size="2"> '.$row['title'].' - [<a href="?deleteLink='.$row['id'].'"
onClick="if(confirm(\'Sikker på du vil slette dette link?\'))this.href=\'?deleteLink='.$row['id'].'\'; else this.href=\'#\'">Slet</a>]</font><br></li>';
}
echo '</ul>';
?>

i behøves ikke lave det der slet dims ! det kun hvis i vil !
Avatar billede detox Nybegynder
29. februar 2004 - 11:31 #1
Hvad mener du når du siger at linket skal godkendes?
Den sidste med at slette kan du måske klare ved at bruge $_GET variablen:

if (isset($_GET['deleteLink'])) {
  $deleteLink = $_GET['deleteLink']; // indsat linie
  mysql_query("delete from links where id = '$deleteLink'");
Avatar billede andreas.s.l Nybegynder
29. februar 2004 - 15:10 #2
altså hvis du går ind og tilføjer et link så blir det jo sendt til linksne det skal det ikke det skal sendes til f.eks admin.php og der skal jeg godkende det før det bliver sendt til linksne
Avatar billede andreas.s.l Nybegynder
29. februar 2004 - 15:10 #3
og det med slet hvor skal det stå i koden ? skriv lige slet.php færdig med det som du sagde i
Avatar billede detox Nybegynder
29. februar 2004 - 23:08 #4
Du kan tilføje en kolonne til din tabel som bestemmer om et link er godkendt. På en admin side kan du så godkende eller slette links.
Mht. din nuværende 'slet' funktion kunne du indsætte den ene linie:
$deleteLink = $_GET['deleteLink']; // indsat linie
som jeg har vist.
Jeg prøver lige at se på det andet.
Avatar billede detox Nybegynder
01. marts 2004 - 09:31 #5
Ok, så har jeg lavet et par script. Jeg har tilføjet et felt ('godkendt') til din tabel, så enten skal du slette den tabel du har eller tilføje feltet mauelt. Desuden har jeg rettet lidt i et par af dine filer, så de er tilpasset til kun at vise de godkendte links. Jeg har brugt brugernavn og password fra 'webvars.inc.php' til login på adminsiden og tilføjet et link til admin forneden på forsiden:

addlink.inc.php
---------------

<?php
    $mailto = 'din@mailadresse.dk';          // your email
    $domain = 'http://www.hjemmeside.dk';    // your webpage
   
    include("webvars.inc.php");

    $link = mysql_connect($hostname, $user, $password);
    mysql_select_db($database);

    $query = ("CREATE TABLE IF NOT EXISTS links (
        id int(11) NOT NULL auto_increment,
        host varchar(255) default NULL,
        ip varchar(15) default NULL,
        time varchar(255) NOT NULL default '',
        title varchar(100) NOT NULL default '',
        url varchar(75) NOT NULL default '',
        godkendt tinyint(4) NOT NULL default '0',
        PRIMARY KEY  (id)
    ) TYPE=MyISAM;");

    mysql_query($query) or die("MySQL Error: " . mysql_error());
    $ip = $_SERVER["REMOTE_ADDR"];
    $host = gethostbyaddr($ip);
    $title = htmlentities($_POST["title"], ENT_QUOTES);
    $url = htmlentities($_POST["url"], ENT_QUOTES);

    if ($title && $url) {
        if (mysql_result(mysql_query("SELECT COUNT(*) FROM links WHERE url='$url'"),0) == 1) {
            echo 'Linket er i databasen!';
        } else {
            $query = ("INSERT INTO links (host, ip, time, title, url) VALUES('$host', '$ip', unix_timestamp(), '$title', '$url');");
            mysql_query($query) or die("MySQL Error: " . mysql_error());
            $time = date("l d F Y @ H:i");
            $headers = "From: $mailto";
            $message = "Host: " . $host . "\nIP: " . $ip . "\nTime: " . $time . "\nTitle: " . $title . "\nURL: " . $url;
            $subject = "Link added on $domain";
            mail($mailto, $subject, $message, $headers);

        header("Location: links.php");
        }
    }
?>


links.php
---------

<? include('ipbann.php') ?>
<body bgcolor="#003366" text="#FFCC00" link="#FFFFFF" vlink="#FFFFFF" alink="#FFFFFF">

<form action="addlink.inc.php" method="post">
    <table>
        <tr>
            <td>Title&nbsp;:&nbsp;</td>
            <td><input maxlength="100" name="title" type="text" /></td>
            <td>&nbsp;*</td>
        </tr>
        <tr>
            <td>URL&nbsp;:&nbsp;</td>
            <td><input maxlength="75" name="url" type="text" value="http://" /></td>
            <td>&nbsp;*</td>
        </tr>
        <tr>
            <td></td>
            <td><input type="submit" value="Tilføj" /><input type="reset" value="Blank" /></td>
            <td></td>
        </tr>
        <tr>
            <td colspan="3">&nbsp;</td>
        </tr>
        <tr>
            <td colspan="3">* = Skal udfyldes.</td>
        </tr>
             
<a href="linksne.php">Klik  Her for at se de andre links</a>

<div style="right: 50%; ;bottom: 30px;position: absolute;"><a href="admin.php">admin</a></div>


linksne.php
-----------

<? include('ipbann.php') ?>
<body bgcolor="#003366" text="#FFCC00" link="#FFFFFF" vlink="#FFFFFF" alink="#FFFFFF">

<?php
    include("webvars.inc.php");

    $link = mysql_connect($hostname, $user, $password);
    mysql_select_db($database);
    $query = ("SELECT id, time, title, url FROM links where godkendt=1 ORDER BY title ASC;");
    $result = mysql_query($query) or die("MySQL Error: " . mysql_error());
    mysql_close($link);
 
    while ($row = mysql_fetch_array($result)) {
        $nu = time();
     
        $new = ($nu - $row["time"] <= 7 * 24 * 60 * 60) ? "&nbsp;NEW!" : "";
        $new = "&nbsp;NEW!";
     
        $time = date("l d F Y @ H:i", $row["time"]);
        print("<a href=\"" . $row["url"] . "\" title=\"Added: " . $time . "\">" . $row["title"] . "</a>" . $new . "<br />\n");
    }
?>

<p>&nbsp;</p>

<a href="links.php">Klik  Her for at tilføje et link</a>


admin.php
---------

<?
include 'webvars.inc.php';
if (isset($_POST['submit'])) {
    if ($_POST['bruger'] == $user) {
        if ($_POST['pass'] == $password) {
            session_start();
            $_SESSION['id'] = session_id();
            header('Location: ret.php');
        } else {
            echo 'Forkert password!';
        }
    } else {
        echo 'Forkert brugernavn!';
    }
} else {
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
<head>
<title>Admin</title>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
<style type="text/css">
body {
    background-color: #003366;
    color: #FFCC00;
}
</style>
</head>
<body>
<div align="center">
<h1>Admin</h1>
<form method="post" action="<?php echo $_SERVER['PHP_SELF']?>">
<table>
<tr>
<td>Brugernavn:</td><td><input type="text" name="bruger" /></td>
</tr>
<tr>
<td>Password:</td><td><input type="password" name="pass" /></td>
</tr>
<tr>
<td></td><td><input style="background-color: #99eeff;width: 90px;" type="submit" name="submit" value="OK" /></td>
</tr>
</table>
</form>
</div>
<? }?>
</body>
</html>


ret.php
-------

<?
session_start();
if (isset($_SESSION['id']) && $_SESSION['id'] == session_id()) {
    include("webvars.inc.php");
    $link = mysql_connect($hostname, $user, $password);
    mysql_select_db($database);
    if (isset($_GET['godkend'])) {
        mysql_query("update links set godkendt=".$_GET['godkend']." where id=".$_GET['id']);
    }
    elseif (isset($_GET['slet']) && $_GET['slet'] == 1) {
        mysql_query("delete from links where id=".$_GET['id']);
    }
    $res = mysql_query("select * from links order by `time` desc");
    $out = '<table><tr><th>Titel</th><th>Url</th><th>Godkendt</th><th>Godkend</th><th>Slet</th></tr>';
    while ($row = mysql_fetch_assoc($res)) {
        $gk = $row['godkendt'] ? 'Ja' : 'Nej';
        $gkstr = $row['godkendt'] ? 'Nej' : 'Ja';
        $gkval = $row['godkendt'] ? 0 : 1;
        $out .= "<tr><td>".$row['title']."</td>
        <td><a href='".$row['url']."'>".$row['url']."</a></td>
        <td>".$gk."</td>
        <td><a href='?id=".$row['id']."&godkend=".$gkval."'>".$gkstr."</a></td>
        <td><a href='?id=".$row['id']."&slet=1'>Slet</a></td></tr>";
    }
    $out .= '</table>';
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
<head>
<title>Admin Godkend/Slet</title>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
<style type="text/css">
body {
    background-color: #003366;
    color: #FFCC00;
}
a {
    color: #FFFFFF;
}
table {
    border:medium groove pink;
}
th{
    border:thin solid red;
    padding: 0px 6px 0px 6px;
}
td {
    border:thin solid blue;
    padding: 0px 6px 0px 6px;
    text-align: center;
}
</style>
</head>
<body>
<div align="center">
<h2>Admin Godkend/Slet</h2>
<?
echo $out;
?>
</div>
</body>
</html>
<?
} else {
    header('Location: admin.php');
}
?>
Avatar billede detox Nybegynder
01. marts 2004 - 09:33 #6
Ps: Husk osse at rette disse to linier til i 'addlink.php':

    $mailto = 'din@mailadresse.dk';          // your email
    $domain = 'http://www.hjemmeside.dk';    // your webpage
Avatar billede andreas.s.l Nybegynder
01. marts 2004 - 12:27 #7
jeg ser på det når jeg kommer hjem men hvor i koden finder jeg password og brugernavn ? til admin siden ?
Avatar billede andreas.s.l Nybegynder
01. marts 2004 - 13:55 #8
http://www.scouit.1go.dk/linksys/linksne.php

det virker vidst ik helt og jeg har ik tjekket admin siden endnu for ved ik hvad koden er
Avatar billede detox Nybegynder
01. marts 2004 - 14:54 #9
Du er nødt til at læse det jeg skriver: 09:31:44
Avatar billede andreas.s.l Nybegynder
01. marts 2004 - 15:00 #10
Sry :)
Avatar billede detox Nybegynder
01. marts 2004 - 15:05 #11
Bare i orden. Spørg endelig hvis det driller.
Avatar billede andreas.s.l Nybegynder
01. marts 2004 - 15:06 #12
så står det der ik men nu kan man ik tilføje  links ? http://www.scouit.1go.dk/linksys/links.php
Avatar billede andreas.s.l Nybegynder
01. marts 2004 - 15:07 #13
lol sry igen glemte og logge ind og godkende dem
Avatar billede andreas.s.l Nybegynder
01. marts 2004 - 15:08 #14
jeg har en lille ting som jeg os skal ha lavet hvis du gider lave det vil jeg være taknemlig altså inde på http://www.scouit.1go.dk/linksys/linksne.php når man trykker på et link skal den komme op i et nyt vindue
Avatar billede andreas.s.l Nybegynder
01. marts 2004 - 15:09 #15
fandt os lige en fejl inde på www.Scouit.1go.dk/linksys/admin.php når man er logget ind så kan man ik slette dem igen ?
Avatar billede andreas.s.l Nybegynder
01. marts 2004 - 15:11 #16
tsk jo man kan :P den var bare langsom men hvis du gider at lave så den popper op så vil jeg være taknemlig
Avatar billede detox Nybegynder
01. marts 2004 - 15:13 #17
Du sætter bare target til '_blank'. Altså linie 20:

        print("<a href=\"" . $row["url"] . "\" target=\"_blank\" title=\"Added: " . $time . "\">" . $row["title"] . "</a>" . $new . "<br />\n");
Avatar billede andreas.s.l Nybegynder
01. marts 2004 - 15:18 #18
Tak skal du have :)
Avatar billede detox Nybegynder
01. marts 2004 - 15:18 #19
Velbekommen :o)
Avatar billede andreas.s.l Nybegynder
01. marts 2004 - 15:19 #20
du har vel ik lyst til at hjælpe mig med en anden ting du skal nok få 200 points til ?
Avatar billede detox Nybegynder
01. marts 2004 - 15:31 #21
Hvad drejer det sig om?
Avatar billede detox Nybegynder
01. marts 2004 - 15:50 #22
Du kan jo bare oprette et spørgsmål, så kan jeg give mit bud på lige fod med alle andre ;o)
Avatar billede andreas.s.l Nybegynder
01. marts 2004 - 16:25 #23
http://www.eksperten.dk/spm/471730 nu kan du jo se på det :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester