Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Problem ze znakiem chr(92)
Forum PHP.pl > Forum > PHP
inf16
Witam
wie ktoś może jak zamienić znak \ na \n ? bo mi w żaden sposób nie wychodzi i tylko błedy wywala jak próbuje za pomoc str_replace zamieniać sad.gif
syntax error, unexpected T_CONSTANT_ENCAPSED_STRING
myślałem że jak skorzystam z chr(92) to mi przejdzie to wyrzuciło
unexpected T_STRING

Dzięki z góry za pomoc
Pyton_000
Str_replace("\\", '\n');
inf16
  1. $proba=str_replace('<br />','',$tmp);
  2. $proba2=str_replace("\\","\n",$proba)

i dalej wywala błąd:
syntax error, unexpected T_STRING
nio chyba że ja coś poplątałem z zamianą znaków
Pyton_000
A możesz powiedzieć co ty chcesz osiągnąć?
inf16
pisze sobie prosty edytor
  1. <form action="editor.php?create=save" method="post">
  2. <table border="0" bordercolor="black" cellspacing="0" cellpadding="0" width="708" style="margin-left:40px; margin-top:20px;">
  3. <tr><td width="221" height="53" valign="top" class="newfile">
  4. <input type="text" name="plik" class="pole2">
  5. </td><td width="113" height="53" valign="top">
  6. <input type="submit" class="newfile1" value=" " title="kliknij by zapisac" hidefocus=true style="outline:none">
  7. </td><td width="371" height="53" valign="top" class="newfile2"><a href="editor.php?oki=zarzadzaj" class="linki" style="margin-left:340px;" hidefocus=true style="outline:none"></a></td></tr></table>
  8. <table border="0" bordercolor="black" cellspacing="0" cellpadding="0" width="708" style="margin-left:40px;">
  9. <tr><td width="708" height="184" valign="top" class="newfile3">
  10. <textarea name="tekst" style="margin-left:15px; width:677px; height:335px; background-color:#e5e4e4; border: 1px solid #6e6666;">
  11. </td></tr></table>
  12. <table border="0" bordercolor="black" cellspacing="0" cellpadding="0" width="708" style="margin-left:40px;">
  13. <tr><td width="708" height="22" valign="top" class="newfile4"></td></tr></table>
  14. </form>

  1. if($_GET['create']==save){
  2. $csfile=$_POST['plik'];
  3. $text=$_POST['tekst'];
  4. $plik=fopen($csfile,"w+");
  5. $plik2=fopen("tmp.txt","w");
  6. $tmp=nl2br($text);
  7. $proba=str_replace('<br />','',$tmp);
  8. fputs($plik,$proba);
  9. fputs($plik2,$csfile);
  10. echo'<meta http-equiv="refresh" content="0; url=editor.php?conti=nued">';
  11. }

i podczas wczytywanie z pliku *.php którego tworze za pomocą skryptu
  1. <title>proba</title>
  2. </head>
  3. <?
  4. echo\"aaa\"; # i tych dwóch znaczników \\ chce się pozbyć
  5. ?>
  6. </body>
  7. </html>
kreatiff
stripslashes ?
Chociaż nie do końca wiem o co chodzi, to ta funkcja służy właśnie to usuwania tych "dodatkowych" slashy.
inf16
Dzięki poszło działa moge tworzyć pliki PHP specool.gif
nospor
Innym rozwiązaniem, o wiele bardziej prawidlowym, jest wyłączenie opcji MAGIC_QUOTES. Lecisz na jakiś archaicznych ustawieniach php....

ps:
Najpierw zamieniasz nowe linie na br
$tmp=nl2br($text);

a potem kasujesz te br
$proba=str_replace('<br />','',$tmp);

Po grzyba? Poprostu wywal te dwie linijki
$tmp=nl2br($text);
$proba=str_replace('<br />','',$tmp);
i nie cuduj bez sensu.
inf16
pewnie i rozwiązanie głupie ale działa tak jak chciałem i to się LICZY yahoo.gif
nospor
Zajebiste podejscie do sprawy. Zycze wiec dalszych sukcesow na drodze programowania.
inf16
dziękuje aaevil.gif
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.