Avatar billede skadam Nybegynder
18. marts 2001 - 00:40 Der er 12 kommentarer og
1 løsning

linie skift i php?

hvordan får jeg lavet liniskift i denne her tagwall.
prøv engang linket og se hvad jeg mener.
Jeg har koden neden under.
http://www.whitehat.dk/skadam/tagwall/tagwall.php
---------------------------------------------
<?#!/usr/bin/php
if($HTTP_POST_VARS){
foreach($HTTP_POST_VARS as $Key=>$Value)
{
$$Key = $Value;
}
}

if($HTTP_GET_VARS){
foreach($HTTP_GET_VARS as $Key=>$Value)
{
$$Key = $Value;
}
}

$allow_html = 0;
if($farve && $navn && $tag && $hjem && $email)
{
$tag = ereg_replace(\"<\",\"<\",$tag);
$tag = ereg_replace(\">\",\">\",$tag);
$fil = \"tagwall.txt\";
$mam = time() - 200;
$tid = date(\"G:i:s\",$mam);
$str  = \"
        <hr>
            <td valign=\\\"top\\\">
            <font color=\\\"FBCD32\\\">
            Tid:  $tid
            </font>
            </td>
        <P>
            <td valign=\\\"top\\\" nowrap>
            <font color=\\\"FBCD32\\\">
            Navn:  $navn
            </font>
            </td>
        </P>
        <P>
            <td valign=\\\"top\\\" nowrap>
            <font color=\\\"FBCD32\\\">
            E-mail:<a href=\\\"mailto:$email\\\">  $email</a>
            </font>
            </td>
        </P>
        <p>
            <td valign=\\\"top\\\">
            <font color=\\\"FBCD32\\\">
            Hjemmeside:<a href=\\\"http://\\\">  $hjem</a>
            </font>
            </td>
        </P>
        <P>
            <td>
            <font color=\\\"FBCD32\\\">
            kommentar:
            </font>
            </td>
            <td width=\\\"\\\" height=\\\"\\\" nowrap>
            <font color=\\\"$farve\\\" valign=\\\"top\\\">
              $tag
            </font>
        <hr>
            </td>
            \\n\";
           

$fp = fopen($fil, r);
if($fp) {
$filArray = file($fil);
$result = implode(\"\", $filArray);
$result = \"$str$result\";
fclose($fp);
}
$fp = fopen($fil, w);
if($fp) {
fputs($fp, $result);
fclose($fp);
}

header(\"location: tagwall.php\");
}
?>
<html>
<head>
<title>---Gæstebog---</title>
</head>
<body bgcolor=\"Black\">
<form action=\"tagwall.php\" method=\"post\">
<font color=\"FBCD32\">
<pre>   
        Vælg farve: <select name=\"farve\">
        <option value=\"FBCD32\">DarkYellow</option>
        <option value=\"red\">Rød</option>
        <option value=\"blue\">Blå</option>
        <option value=\"green\">Grøn</option>
        </select>
        Navn:      <input type=\"text\" name=\"navn\" maxlength=\"50\">
        E-mail:    <input type=\"text\" name=\"email\" maxlength=\"50\">
        Hejmmeside: <input type=\"text\" name=\"hjem\"  value=\"http://www.\" maxlength=\"100\">
        Kommentar: 
        <TEXTAREA rows=5 type=\"text\" name=\"tag\" cols=40></TEXTAREA>
                <input type=\"submit\" name=\"skriv\" value=\"Post\">
</pre>
</font> 
</form>
<?readfile(\"tagwall.txt\");?>
</body>
</html>
Avatar billede bo.morville Nybegynder
18. marts 2001 - 00:48 #1
Smid flg. i toppen af scriptet
det skal indsættes lige efter:
$tag = ereg_replace(\">\",\">\",$tag);

$tag = nl2br($tag); 
Avatar billede skadam Nybegynder
18. marts 2001 - 02:18 #2
Det har jeg prøvet og det hjælper ikke noget.
den laver ikke linie skift jeg har lige gjordt igen men uden held.
Hvad gør jeg så..Jeg har også prøvet med tables
og sat en bredde men uden held.
Hvad gør jeg så...
Avatar billede f2 Nybegynder
18. marts 2001 - 06:48 #3
$tag = ereg_replace(\"<\",\"<\",$tag);
$tag = ereg_replace(\">\",\">\",$tag);
$tag = ereg_replace(\"\\n\",\"<br>\",$tag);
Avatar billede erikjacobsen Ekspert
18. marts 2001 - 07:52 #4
1) Hvorfor skriver du
  $tag = ereg_replace(\"<\",\"<\",$tag);
  $tag = ereg_replace(\">\",\">\",$tag);
Mon ikke du mener
  $tag = ereg_replace(\"<\",\"&lt;\",$tag);
  $tag = ereg_replace(\">\",\"&gt;\",$tag);
Eller brug den indbyggede:
  $tag = htmlentities($tag);

2) Med $tag = nl2br($tag); (eller f2s løsning), får du kun skiftet linie i browseren
når brugeren selv har lavet et linie skift i teksten. Du vil have skiftet linie, hvis
brugeren har lavet en laaaang linie eller et laaaangt ord.

Så vil jeg spørge dig: skal det være en quick and dirty løsning, hvor vi bare
skærer et tilfældigt ord over, eller skal den være raffineret, så den forsøger at
være dele på et fornuftigt sted.
Avatar billede skadam Nybegynder
18. marts 2001 - 10:17 #5
erikjacobse->
Det må godt være på en raffineret måde, nu når du tilbyder din hjælp.
Avatar billede f2 Nybegynder
18. marts 2001 - 11:04 #6
altså..
hvis du vil ha\' at den skifter linje hver 40\'ne tegn så:

$tekst = wrap($tekst,40);



easy
Avatar billede skadam Nybegynder
18. marts 2001 - 11:57 #7
f2->

Fatal error: Call to unsupported or undefined function wrap()
Avatar billede f2 Nybegynder
18. marts 2001 - 12:06 #8
$tekst = wordwrap($tekst,40);
Avatar billede skadam Nybegynder
18. marts 2001 - 12:17 #9
ok jeg kan se at det nok virker i php version 4 men jeg har kun version 3. prøver at opdater.
Avatar billede skadam Nybegynder
20. marts 2001 - 15:19 #10
Jeg har lige opdateret fra php3 til php4 men nu virker php slet ikke ?
jeg har tilføjet følgende i httpd.conf. og fjerent det samme bare med php3.

#<VirtualHost _default_:*>
Script PUT /put.php4
#</VirtualHost>
AddType text/html .html
AddType text/html .htm
ScriptAlias /php4/ \"c:/php4/\"
AddType application/x-httpd-php4 .php
Action application/x-httpd-php4 \"/php4/php.exe\"
Avatar billede f2 Nybegynder
20. marts 2001 - 15:24 #11
jeg kender ikke noget til httpd.conf
Avatar billede jd Nybegynder
20. marts 2001 - 16:36 #12
skadam-> Det eneste du skal gøre efter installering af Apache, er at rette linien

DirectoryIndex index.html
til fx.
DirectoryIndex index.html index.php

Derefter skal du sørge for at ServerName står til localhost eller 127.0.0.1

Til sidst skriver du

ScriptAlias /php4 c/php4
AddType application/x-httpd-php .php
Addhandler application/x-httpd-php .php
Action application/x-httpd-php /php/php.exe

I bunden af filen (httpd.conf)

- Jonas
Avatar billede skadam Nybegynder
20. marts 2001 - 16:36 #13
ok f2 det virker på whitehat men det virker ikke hjemme hos mig jeg har ellers fået php4 til at virke og har den nyeste version. Men det virker sku ikke her. Men tak for hjælpen
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