Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: POST , textarea , formularz , znaki specjalne , polskie znaki , PHP , HTML
Forum PHP.pl > Forum > PHP
croonx
Witam.

Prosty program , prosty problem .
Formularz HTML ma przesłać dane z pola textarea metod± POST do skryptu PHP .

Formularz :

Kod
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">

<html lang="pl">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-2">
<title>Planer Ataków</title>
</head>
<body>
<textarea name="zrodla" rows="30" cols="40"></textarea>
<br>
<input type="submit" value="Dalej" />
</form>
</body>
</html>


Skrypt :
Kod
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">

<html lang="pl">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-2">
<title>Planer Ataków</title>
</head>
<body>
<?PHP
//Pobireram listę Ľródeł
$zrodla=$_POST[zrodla];
echo $zrodla;
?>
<body>

W formularzu
Wpisuję np. co¶ takiego :

1 g±ska
2 łab±dĽ

A skrypt generuje mi co¶ takiego :

1 gąska 2 łabądź

Jak zrobić żeby formularz wysyłał to co jest napisane a skrypt odbierał to co do niego przychodzi ?


###### ApacheFriends XAMPP (basic package) version 1.6.7 ######

Apache 2.2.9
MySQL 5.0.51b
PHP 5.2.6 + PHP 4.4.9 + PEAR
PHP-Switch win32 1.0 (please use the "php-switch.bat")
XAMPP Control Version 2.5 from www.nat32.com
XAMPP Security 1.0
SQLite 2.8.15
OpenSSL 0.9.8h
phpMyAdmin 2.11.7
ADOdb 4.98
Mercury Mail Transport System v4.52
FileZilla FTP Server 0.9.25
Webalizer 2.01-10
Zend Optimizer 3.3.0
eAccelerator 0.9.5.3 for PHP 5.2.6 (comment out in the php.ini)
cojack
Taki same kodowanie pliku, takie samo ustawione kodowanie w head. I będzie dobrze przesyłał. I ja sprawdzam mb_ czy jest takie kodowanie jakie ja chce.
croonx
Zmieniłem kodowanie w plikach i s± polskie literki , ale teraz dostaję to :

1 g±ska 2 łab±dĽ

Czyli nie przeszły znaki ENTER , jak to zrobić ?
nospor
entery przeszly tylko html olewa entery. HTML uznaje br

uzyj nl2br()
paw-e-l
je¶li masz w konfigu apacha AddDefaultCharset ustawione to zakomentuj. na debianie plik z t± opcj± siedzi w /etc/apache2/conf.d/charset

nvm spóĽniłem się winksmiley.jpg
cojack
Nie html olewa entery, bo zobacz sobie w Ľródło i masz nowe linie, tylko \n nie jest reprezentowane jako <br /> html'owe. Tak jak nsopor pisał, użyj nl2br.
croonx
Faktycznie .
Mam jeszcze inne pytanie , jak odnaleĽć w tym przesłanym tek¶cie znaki końca linii ?

Kod
while (($zrodla[$i])!='\n' & $i!=0)
   {
        $i--;
        $g++;
    }
return $nazwa=(substr($zrodla,$i,$g));


To mi nie działa ;/
cojack
Co Ty w ogóle chcesz zrobić? Może użyj explode na \n, szczerzę to ja nie wiem co Ty kombinujesz [;
croonx
Chcę znaleĽć w tym przesłanym tek¶cie znaki \n

Kod
$i=0;
While ($i<strlen($zrodla))
{
    if ($zrodla[$i]=='\n')
    {
        echo ('jest');
    }
$i++;
}


Ale nie znajduje ;/

Temat można zamkn±ć , po prostu "\n" a nie '\n' .

Dziękuję cojack , nospor
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.