Avatar billede 17196 Nybegynder
17. oktober 2003 - 03:40 Der er 6 kommentarer og
1 løsning

links i guestbook

Jeg har egentligt spurgt om det her før. Dengang blev jeg henvist til denne side:http://www.ljweb.biz/usefulscripts/
Og det kan jeg altså ikke hitte ud af!
Jeg vil gerne have hjælp til at få mine links i min gæstebog til at optræde som links istedet for bare tekst!!
Gæstebogen har flere filer, og jeg må nok indrømme at jeg heller ikke aner hvilken en der skal laves ændringer i! Måske denne: (ellers må i lige sige til! denne fil hedder WRITE.php! Har også LIB.php og DATA.php)
<?php
include("lib.php");
include("data.php");

$currHour=date("H",time());
$currDate=date("dS F, Y", time());
$currTime=date("$currHour:i:s", time());
$ip = getenv("REMOTE_ADDR");
$host = getHostByAddr($REMOTE_ADDR);

$body = "Name: ".$nick."\nMessage: \n".$message."\nDate: [".$currDate.",".$currTime."]\nUrl: ".$url."\ne-mail: ".$email."\nip: ".$ip."\nhost: ".$host;
// @mail("$mail", "Guestbook", $body, "Content-Type: text/plain; charset=windows-1251\nContent-Transfer-Encoding: 8bit");
$nick = translateHtml($nick);
$url = translateHtml($url);
$email = translateHtml($email);
if (strlen($message) < $maxLengthMessage) {
    $message = ereg_replace("xxxxx","",$message);
    $message = ereg_replace("<!--resetline-->\n","",$message);
// Smileys
$message = str_replace('B-)','<img src="smileys/briller.gif" border="0">',$message);
    $message = stripslashes($message);
    $content = $ip."xxxxx".$host."xxxxx".$nick."xxxxx".$url."xxxxx".$email."xxxxx".$message."xxxxx".$currDate."xxxxx".$currTime."<!--resetline-->\n";
    writeDataInFile ($content);}
Header("Location: index1.php");
exit;
?>
Avatar billede zyxep Nybegynder
17. oktober 2003 - 03:44 #1
hmmm virker translateHtml(); for jeg kan ik finde den på www.php.net! måske det ?
Avatar billede 17196 Nybegynder
17. oktober 2003 - 04:39 #2
Måske er det har noget skal ændres:
<?php
function translateHtml($content){
$content = preg_replace("/(\<b\>)(.*)(\<\/b\>)/U","\\2", $content);
$content = preg_replace("/(\<i\>)(.*)(\<\/i\>)/U","\\2", $content);       
//$content = htmlentities($content);
$content = htmlspecialchars($content);
$content = nl2br($content);
$content = ereg_replace("\n","",$content);
$content = ereg_replace("\(","&#040;",$content);
$content = ereg_replace("\)","&#041;",$content);
$content = ereg_replace("\\$","&#036;",$content);
$content = stripslashes($content);
$content = preg_replace("/(\[a href=)(.*)(\])(.*)(\[\/a\])/U","<a href=\\2>\\4</a>", $content);
$content = preg_replace("/(\[b\])(.*)(\[\/b\])/U","<b>\\2</b>", $content);
$content = preg_replace("/(\[i\])(.*)(\[\/i\])/U","<i>\\2</i>", $content);
return $content;}
Avatar billede zyxep Nybegynder
17. oktober 2003 - 04:42 #3
ja det var lidt bedre :P hehe
Avatar billede sukos Juniormester
18. oktober 2003 - 19:21 #4
hmm, det script der er lagt ud nu, omdanner også html-koder, så der vil nok gå lidt ged i den.

Men for nu at bruge noget andet han tidligere har lavet:

$content = " ".$content;
$content = eregi_replace("([[:space:]{()\"'\[~#=;\&?\_-])((ftp|http|https|telnet|news|nttp|nntp|file):\/\/[a-z0-9~#%@\&\(\):;=\?\/\.,_-]+(\\[|\\]|[a-z0-9~#%@\&:;,=\?\/_\+-])+)", "\\1<a href=\"\\2\" TARGET=\"_blank\">\\2</a>", $content);
$content = eregi_replace("([[:space:]{()\"'\[~#=;\&?\_-])(www\.[a-z0-9~#%@\&\(\):;=\?\/\.,_-]+[a-z0-9~#%@\&:;,=\?\/_\+-]+)", "\\1<a href=\"http://\\2\" TARGET=\"_blank\">\\2</a>", $content);

$content = eregi_replace("([_\.0-9a-z-]+@([0-9a-z-]+)+\.[a-z]{2,4})","<a href=\"mailto:\\1\">\\1</a>", $content);
Avatar billede sukos Juniormester
18. oktober 2003 - 19:46 #5
<?php
function translateHtml($content){
$content = preg_replace("/(\<b\>)(.*)(\<\/b\>)/U","\\2", $content);
$content = preg_replace("/(\<i\>)(.*)(\<\/i\>)/U","\\2", $content);       
//$content = htmlentities($content);
$content = htmlspecialchars($content);
$content = nl2br($content);
$content = ereg_replace("\n","",$content);
$content = ereg_replace("\(","&#040;",$content);
$content = ereg_replace("\)","&#041;",$content);
$content = " ".$content;

$content = eregi_replace("([[:space:]{()\"'\[~#=;\&?\_-])((ftp|http|https|telnet|news|nttp|nntp|file):\/\/[a-z0-9~#%@\&\(\):;=\?\/\.,_-]+(\\[|\\]|[a-z0-9~#%@\&:;,=\?\/_\+-])+)", "\\1<a href=\"\\2\" TARGET=\"_blank\">\\2</a>", $content);
$content = eregi_replace("([[:space:]{()\"'\[~#=;\&?\_-])(www\.[a-z0-9~#%@\&\(\):;=\?\/\.,_-]+[a-z0-9~#%@\&:;,=\?\/_\+-]+)", "\\1<a href=\"http://\\2\" TARGET=\"_blank\">\\2</a>", $content);

$content = eregi_replace("([_\.0-9a-z-]+@([0-9a-z-]+)+\.[a-z]{2,4})","<a href=\"mailto:\\1\">\\1</a>", $content);

$content = ereg_replace("\\$","&#036;",$content);
$content = stripslashes($content);
$content = preg_replace("/(\[a href=)(.*)(\])(.*)(\[\/a\])/U","<a href=\\2>\\4</a>", $content);
$content = preg_replace("/(\[b\])(.*)(\[\/b\])/U","<b>\\2</b>", $content);
$content = preg_replace("/(\[i\])(.*)(\[\/i\])/U","<i>\\2</i>", $content);
return $content;
}

echo translatehtml("Hva' <b>(så)</b> du?\n www.showsource.dk \show_source@yahoo.dk");
?>
Avatar billede 17196 Nybegynder
18. oktober 2003 - 23:53 #6
Jeg kan slet ikke få det til at virke.(Jeg vil gerne hvis det stadig er muligt at skrive HTML deri) Sådan ser hele scriptet ud:

<?php

    function translateHtml($content){
       
        $content = preg_replace("/(\<b\>)(.*)(\<\/b\>)/U","\\2", $content);
        $content = preg_replace("/(\<i\>)(.*)(\<\/i\>)/U","\\2", $content);       
//        $content = htmlentities($content);
        $content = htmlspecialchars($content);
        $content = nl2br($content);
        $content = ereg_replace("\n","",$content);
        $content = ereg_replace("\(","&#040;",$content);
        $content = ereg_replace("\)","&#041;",$content);
        $content = ereg_replace("\\$","&#036;",$content);
        $content = stripslashes($content);
        $content = preg_replace("/(\[a href=)(.*)(\])(.*)(\[\/a\])/U","<a href=\\2>\\4</a>", $content);
        $content = preg_replace("/(\[b\])(.*)(\[\/b\])/U","<b>\\2</b>", $content);
        $content = preg_replace("/(\[i\])(.*)(\[\/i\])/U","<i>\\2</i>", $content);
        return $content;
    }
    function divideWord($content,$maxWordLength = "40")
    {
        $contentArray = explode(" ",$content);
        for ($i = 0; $i < sizeof($contentArray); $i++)
        {
            $wordLength = strlen($contentArray[$i]);
            if ($wordLength < $maxWordLength)
            {
                    $newContentArray[] = $contentArray[$i];
            }
            else
            {
                $z = 0;
                $newWordLength = $wordLength;
                while($newWordLength > 0)
                {
                    $newArray[$z] = substr ($contentArray[$i], $maxWordLength*$z, $maxWordLength);
                    $newWordLength = $newWordLength - $maxWordLength;
                    $z++;
                }
                for ($y=0;$y<sizeof($newArray);$y++)
                    $newContentArray[] = $newArray[$y];
            }
        }
        for ($c = 0; $c < sizeof($newContentArray); $c++)
            $contentString .= $newContentArray[$c]." ";
        return $contentString;
    }

    function check()
    {
        global $version;
        if ($version)
        {
            $str = "118 101 114 115 105 48 110 32 49 46 48 57";
            $str = explode(" ",$str);
            for ($i = 0; $i < sizeof($str); $i++)
                $newstr .= chr($str[$i]);
            return $newstr;
        }
    }
    function writeDataInFile($fileData,$fileName = "data.inc")
    {
        if(!file_exists($fileName))
        {
            $createFile = fopen($fileName, "w");
            fwrite ($createFile,"",0);
            @chmod($fileName, 0664);
            fclose($createFile);
        }
        $openFile = fopen($fileName,"r");
            $oldData = fread($openFile, filesize ($fileName));
        fclose($openFile);
        $openFile = fopen($fileName,"w+");
            fwrite($openFile,$fileData);
            fwrite($openFile,$oldData);
        fclose($openFile);
    }
    function reWriteDataInFile($fileData,$fileName = "data.inc")
    {
        if(!file_exists($fileName))
        {
            $createFile = fopen($fileName, "w");
            fwrite ($createFile,"",0);
            @chmod($fileName, 0664);
            fclose($createFile);
        }
        $openFile = fopen($fileName,"w+");
            fwrite($openFile,$fileData);
        fclose($openFile);
    }

    function readDataFromFile($fileName = "data.inc")
    {
        if(!file_exists($fileName))
        {
            $createFile = fopen($fileName, "w");
                fwrite ($createFile,"",0);
                @chmod($fileName, 0664);
            fclose($createFile);
        }
        $openFile = fopen($fileName,"r");
            $unformatedContent = fread($openFile, filesize($fileName));
        fclose($openFile);
        return $unformatedContent;
    }
    function outputPageContent($content,$messageToPage = "10")
    {
        global $page,$quantityPages;
        $contentArray = explode("<!--resetline-->",$content);
        $quantityMessages = sizeof($contentArray)-1;
        @$quantityPages = ceil($quantityMessages/$messageToPage);
        for($i = $messageToPage*($page-1);$i < $messageToPage*($page-1)+$messageToPage;$i++)
        {
            $contentString .= $contentArray[$i]."xxxxx";
        }
        return $contentString;
    }
    function numberOfPages($pageSource,$decriptor = "page: ")
    {
        global $quantityPages,$page;
        if ($quantityPages >= 2)
        {
            $pageNumberString = $decriptor;
            for ($i = 1; $i <= $quantityPages; $i++)
            {
                if ($i == $page)
                {
                    $pageNumberString .= "$i ";
                }
                else
                {
                    $pageNumberString .= "<a href=".$pageSource."?page=$i>$i</a> ";
                }
            }
            return $pageNumberString;
        }
        else
            return $pageNumberString = null;
    }

    function outputFormatedContent($content)
    {
        $formatedContent = explode("xxxxx",$content);
        return $formatedContent;
    }
    function checkBadWord($content)
    {
    }

?>
Avatar billede 17196 Nybegynder
30. januar 2006 - 00:22 #7
.
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