Avatar billede essaktsop Nybegynder
11. april 2001 - 17:38 Der er 42 kommentarer

PHP - \\\"

Hej eksperter *grin*.
Jeg er igang med at lave en side i PHP hvor man kan skrive en lille besked. Lidt ligesom en gæstebog.
Mennår man laver \' og \" skriver den \\ foran. Jeg ved godt hvorfor, men hvordan  fikser jeg den? kan jeg det?

------------
Postkasse | essaktsop
------------
Avatar billede red_eagle Nybegynder
11. april 2001 - 17:39 #1
kode?
Avatar billede itux Nybegynder
11. april 2001 - 17:40 #2
print stripslashes($tekst);

(http://php.net/stripslashes)
Avatar billede parazite Nybegynder
11. april 2001 - 17:40 #3
$var = stripslashes($var);
Avatar billede parazite Nybegynder
11. april 2001 - 17:41 #4
Altså:

$besked = stripslashes($besked);

hvor $besked er den variabel du henter din tekstbesked ind i.
Avatar billede essaktsop Nybegynder
11. april 2001 - 17:44 #5
ja, det er lige det. Nu er det bare sådan at jeg er kun kan lidt PHP!

Kode:
<?
if($farve && $navn && $tag) {
$tag = ereg_replace(\"<\",\"&lt;\",$tag);
$tag = ereg_replace(\">\",\"&gt;\",$tag);

$fil = \"tagwall.txt\";
$mam = time() - 7200;
$tid = date(\"G:i:s\",$mam);
$str  = \"<tr><td valign=\\\"top\\\">$tid</td><td  valign=\\\"top\\\" nowrap><a href=\\\"mailto:$email\\\">$navn</a></td><td><font color=\\\"$farve\\\" valign=\\\"top\\\">$tag</font></td></tr>\\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>Tagwall</title>
</head>

<font face=\"verdana\">

<form action=\"tagwall.php\" method=\"post\">

<table border=\"0\" align=\"center\">
<tr><td><b>Farve:</b></td><td><b>Navn</b></td><td><b>Email:</b></td><td><b>Tag:</b></td><td></td></tr>
<tr><td><select name=\"farve\"><option value=\"black\">Sort</option><option value=\"darkred\">Rød</option><option value=\"darkblue\">Blå</option><option value=\"darkgreen\">Grøn</option></select></td><td><input type=\"text\" name=\"navn\" maxlength=\"40\"></td><td><input type=\"text\" name=\"email\" maxlength=\"40\"></td><td><input type=\"text\" name=\"tag\" size=\"40\" maxlength=\"200\"></td><td><input type=\"submit\" name=\"skriv\" value=\"Skriv\"></td></tr>
</table>

</form>

<table width=\"650\" border=\"0\" align=\"center\">
<tr><td><b>Tid:</b></td><td><b>Navn:</b></td><td><b>Tag:</b></td></tr>
<?
readfile(\"tagwall.txt\");
?>
</table>

</font>

</html>
Avatar billede bromer Nybegynder
11. april 2001 - 17:44 #6
Et andet godt råd.. som noget er bedre en både iTux\'s og parzite\'s.

RTFM  : http://www.php.net/manual/
Avatar billede bromer Nybegynder
11. april 2001 - 17:44 #7
En anden ting. Dette spørgsmål er ikke 100 point værd
Avatar billede itux Nybegynder
11. april 2001 - 17:46 #8
Joh, for det skal koste dyrt hvis man er for doven til at læse lidt i manualen :)
Avatar billede bromer Nybegynder
11. april 2001 - 17:47 #9
Ligemeget hvad er det på ingen måde 100 point værd.
Avatar billede itux Nybegynder
11. april 2001 - 17:49 #10
Nej, det er nul point værd .. men min point(e) (fik du den? hehehehe) er, at hvis man ikke gider kigge i manualen skal det fanme koste en meget .. og ikke bare fem sølle point eller noget.
Avatar billede parazite Nybegynder
11. april 2001 - 17:49 #11
<?
if($farve && $navn && $tag) {
$tag = ereg_replace(\"<\",\"&lt;\",$tag);
$tag = ereg_replace(\">\",\"&gt;\",$tag);
$tag = stripslashes($tag);

$fil = \"tagwall.txt\";
$mam = time() - 7200;
$tid = date(\"G:i:s\",$mam);
$str  = \"<tr><td valign=\\\"top\\\">$tid</td><td  valign=\\\"top\\\" nowrap><a href=\\\"mailto:$email\\\">$navn</a></td><td><font color=\\\"$farve\\\" valign=\\\"top\\\">$tag</font></td></tr>\\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>Tagwall</title>
</head>

<font face=\"verdana\">

<form action=\"tagwall.php\" method=\"post\">

<table border=\"0\" align=\"center\">
<tr><td><b>Farve:</b></td><td><b>Navn</b></td><td><b>Email:</b></td><td><b>Tag:</b></td><td></td></tr>
<tr><td><select name=\"farve\"><option value=\"black\">Sort</option><option value=\"darkred\">Rød</option><option value=\"darkblue\">Blå</option><option value=\"darkgreen\">Grøn</option></select></td><td><input type=\"text\" name=\"navn\" maxlength=\"40\"></td><td><input type=\"text\" name=\"email\" maxlength=\"40\"></td><td><input type=\"text\" name=\"tag\" size=\"40\" maxlength=\"200\"></td><td><input type=\"submit\" name=\"skriv\" value=\"Skriv\"></td></tr>
</table>

</form>

<table width=\"650\" border=\"0\" align=\"center\">
<tr><td><b>Tid:</b></td><td><b>Navn:</b></td><td><b>Tag:</b></td></tr>
<?
readfile(\"tagwall.txt\");
?>
</table>

</font>

</html>
Avatar billede bromer Nybegynder
11. april 2001 - 17:50 #12
Det var godt nok meget kode for en linies skyld
Avatar billede parazite Nybegynder
11. april 2001 - 17:50 #13
Og så kan du også udskifte
$tag = ereg_replace(\"<\",\"&lt;\",$tag);
$tag = ereg_replace(\">\",\"&gt;\",$tag);
med
$tag = htmlentities($tag);
der fjerner alle HTML-tags. :o)
Avatar billede itux Nybegynder
11. april 2001 - 17:50 #14
Altså, parazite .. vi er to der har givet et ordentligt svar, og alligevel synes du du skal paste HELE koden igen for at vise at du har tilføjet EEN linie, som står fire-fem gange i toppen af spørgsmålet??? Sheesh..
Avatar billede parazite Nybegynder
11. april 2001 - 17:50 #15
bromer : *hehe*
Avatar billede parazite Nybegynder
11. april 2001 - 17:52 #16
itux : Han skriver selv at han ikke er meget inde i PHP, ogeh... what\'s it to you? ;o)
Avatar billede bromer Nybegynder
11. april 2001 - 17:52 #17
Vi kan også udskrifte:

<?
readfile(\"tagwall.txt\");
?>

med

<? readfile(\"tagwall.txt\"); ?>

(jubii.. jeg har svaret endnu mere)
Avatar billede itux Nybegynder
11. april 2001 - 17:53 #18
parazite: Hvis han er nok inde i php til at finde den ene linie du har tilføjet, er han også nok inde i php til at forstå det svar jeg (og du) gav ham først.
Avatar billede parazite Nybegynder
11. april 2001 - 17:54 #19
bromer : Forskellen på dit og mit er bare, at mit rent faktisk gør hans kode bedre.
Avatar billede itux Nybegynder
11. april 2001 - 17:54 #20
Hvis man også vil spare en hel variabel, kunne man lave:

$mam = time() - 7200;
$tid = date(\"G:i:s\",$mam);

om til:

$tid = date(\"G:i:s\",time()-7200);
Avatar billede itux Nybegynder
11. april 2001 - 17:55 #21
Man kunne også spare en linie her:

$fp = fopen($fil, r);
if($fp) {
  # code
}

bliver til:

if($fp = fopen($fil,r)) {
  # code
}
Avatar billede parazite Nybegynder
11. april 2001 - 17:55 #22
itux : Forskellen er blot, at her skal han bare kunne se forskel på to koder, hvor han med dit rent faktisk skal vide noget om PHP.
Men i stedet for at spamme hans spørgsmål, så spam min mail: admin@middleofnowhere.dk, hvis du vil snakke om andet.
Avatar billede parazite Nybegynder
11. april 2001 - 17:56 #23
..oO(...lamers...)
Avatar billede bromer Nybegynder
11. april 2001 - 17:56 #24
parazite: Din kode gør ikke hans kode bedre... det kunne jo være at det var et valg han havde lavet... og min ændring gør da også koden bedre... Det bliver hurtigere....
Avatar billede itux Nybegynder
11. april 2001 - 17:59 #25
parazite: Fordelen ved mit svar er, at han lærer noget .. det gør han ikke af at copy-paste din kode ind i hans script.
Avatar billede bromer Nybegynder
11. april 2001 - 18:00 #26
parazite: Kalder du altid folk for lamers hvis du ikke kan argumentere for dine synspunkter?
Avatar billede parazite Nybegynder
11. april 2001 - 18:02 #27
bromer : Jeg kalder folk lamers hvis jeg synes de kommer med gentagne kommentarer, der ikke har en bjælde med det stillede spørgsmål at gøre, ja.

itux : Hvis nu manden ikke VED hvor koden skal sættes ind?!
Avatar billede bromer Nybegynder
11. april 2001 - 18:04 #28
Det holder det...
Avatar billede bromer Nybegynder
11. april 2001 - 18:05 #29
hmmm ville have skrevet \"Det holder ikke\"
Avatar billede itux Nybegynder
11. april 2001 - 18:07 #30
parazite: Hvis manden ikke ved det, kan manden 1) Læse manualen (jeg havde endda linket direkte til funktionen) .. 2) Spørge.

(no offense, mand :))
Avatar billede benzon Praktikant
11. april 2001 - 18:14 #31
Helt Ærligt, Syntes i ikke at i skulle prøve at hjælpe på en seriøs måde i stedet for at skrive en masse ævl som man ikke for så meget ud af ???
Avatar billede parazite Nybegynder
11. april 2001 - 18:14 #32
itux : Nu er jeg selv temmelig meget ny i PHP, så jeg ved hvordan det er at sidde og rode med en funktion med manualen som eneste hjælp. Den er altså ikke altid verdens nemmeste læsning! ;o)
Og nummer 2 var jo netop hvad han gjorde.
Avatar billede itux Nybegynder
11. april 2001 - 18:16 #33
benzon: Been there, done that. Han har faktisk fået hjælp på en seriøs måde. Hvis du lige gad læse toppen af spørgsmålet.

parazite: Granted, manualen er ikke verdens nemmeste læsning .. men den er altså nok til at man kan forstå hvad en funktion gør .. det er faktisk udpenslet pænt meget. Og hvad nummer to angår, hentydede jeg til hvis han ikke kunne finde ud af at bruge funktionen .. så kunne han spørge igen.
Avatar billede parazite Nybegynder
11. april 2001 - 18:19 #34
itux : Lige præcis stripslashes(); synes jeg er specielt svær at læse, hvis man ikke er inde i sproget der bruges i manualen. Hvorfor faen skriver de ikke bare på dansk? ;o)
Mener du at han skulle have stillet endnu et spørgsmål, udlovet point igen, og der fået svar på hvordan man bruger stripslashes();?
Avatar billede itux Nybegynder
11. april 2001 - 18:22 #35
Ih, ja. Den er rigtig svær - især hvis man ikke forstår engelsk. Hvad er det ved \"\\\' becomes \' and so on\" du ikke forstår?
Og nej, han skulle selvfølgelig have spurgt i en kommentar til samme spørgsmål. Vær ikke dum. Det er jo det de er der for (kommentarerne).

Mht. manualen, kunne de da ikke have skåret beskrivelsen mere ud i pap.
Avatar billede itux Nybegynder
11. april 2001 - 18:25 #36
I øvrigt er jeg sikker på at php-folkene ville værdsætte en dansk oversættelse af manualen, så du kan jo sætte dig ned og lave en?
Avatar billede parazite Nybegynder
11. april 2001 - 18:26 #37
Nærmere string stripslashes (string str) jeg hentydede til.

OK, hvad er det så i
ja, det er lige det. Nu er det bare sådan at jeg er kun kan lidt PHP!
du ikke ser som et spørgsmål?
Avatar billede itux Nybegynder
11. april 2001 - 18:29 #38
string stripslashes (string str)
har jo ikke så meget med php at gøre, som med normal programmeringsmanualsyntax ..

Og det sidste du skriver giver overhovedet ingen mening.
Avatar billede parazite Nybegynder
11. april 2001 - 18:30 #39
itux : Og hvis man aldrig har programmeret før?

Med det andet mener jeg: Den sætning han der skriver efterfulgt af en stump kode er det jeg normalt opfatter som et spørgsmål eller et ønske om uddybelse.
Avatar billede itux Nybegynder
11. april 2001 - 18:34 #40
Hvis man aldrig har programmeret før, har man et problem. Så kan man jo lige spørge til det også. Jeg mener bare, at det er bedre at man forsøger at læse manualen i stedet for bare at give op med det samme med en \"nå, det kan jeg nok ikke finde ud af\", og spørge folk. Hvis man så ikke forstår syntax, kan man spørge. Men man bør give det et forsøg.

Den sætning han der skrev viste tydeligt, at han ikke havde klikket på mit link og læst manualsiden.
Avatar billede krn Nybegynder
12. april 2001 - 13:04 #41
$felt = stripslashes($felt);
Avatar billede parazite Nybegynder
12. april 2001 - 14:55 #42
krn : Uh yeah! Godt svar! Prøv lige at kigge på svar 2, 3 og 4.
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