Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

Serwer HTTP

Ostatnio zmodyfikowano 2011-01-01 22:53
Autor Wiadomość
malan
» 2011-01-01 20:31:03
(...)plik=aaa.txt"
Nie widzę żebyś otwierał gdzieś ten cudzysłów... Nie powinno być tak:
plik="aaa.txt"
?
P-26094
ison
Temat założony przez niniejszego użytkownika
» 2011-01-01 20:33:32
nawet gdy biorę to w cudzysłów to otrzymuję odpowiedź:
FILE: HTTP/1.1 200 OK
Date: Sat, 01 Jan 2011 19:31:23 GMT
Server: Apache/2.2.17 (Win32) PHP/5.2.16
X-Powered-By: PHP/5.2.16
Content-Length: 88
Content-Type: text/html

<body bgcolor=black><font color=white>Blad przy przesylaniu danych!</font></body>

te pierwsze informacje zawsze są w odpowiedzi, a ta dolna część to błąd, który wyświetla skrypt php, którego używam
P-26095
malan
» 2011-01-01 20:35:23
No to podaj pełną ścieżkę do tego pliku.
P-26096
ison
Temat założony przez niniejszego użytkownika
» 2011-01-01 20:39:42
to samo, z cudzysłowem i bez
skrypt tej zmiennej w ogóle nie widzi
P-26097
malan
» 2011-01-01 20:50:10
Czyli wysyłasz zły nagłówek (tak obstawiam)... Pobierz sobie np. Live HTTP Headers (Mozilla Firefox), uruchom skrypt z poziomu strony i zobacz, co dokładnie wysyła przeglądarka.
P-26098
ison
Temat założony przez niniejszego użytkownika
» 2011-01-01 20:53:15
no właśnie teraz patrze że to php jakieś dziwne jest...
echo 'Błąd przy przesyłaniu danych!'.$nazwa;
powinien wyświetlić wartość zmiennej o nazwie nazwa
localhost/submit.php?nazwa=test
nic nie wyświetla poza komunikatem 'Błąd przy przesyłaniu danych!'...

//edit ok, już wykombinowałem z tymi zmiennymi w adresie tylko to mi trochę rujnuje cały skrypt ;p
P-26101
malan
» 2011-01-01 21:06:15
No, to wrzuć poprawne rozwiązanie :)
P-26102
ison
Temat założony przez niniejszego użytkownika
» 2011-01-01 21:20:00
dobra, udało mi się osiągnąć swój cel :D
nie do końca tak jak zamierzałem to zrobić na początku ale ważne, że się udało
zamiast przesyłania pliku postanowiłem operować tylko na zmiennych, które mogę przekazać w adresie

napisałem sobie skrypt:
komentarz.php:
<?php
echo '<body bgcolor=black>';
echo '<font color=white>';

$tresc=$_GET[tresc];

$fp = fopen("komentarze.txt", "a");
flock($fp, 2);
fwrite($fp, $tresc);
fwrite($fp, "\r\n");
flock($fp, 3);
fclose($fp);

echo 'Dodano :)';

echo '</font>';
echo '</body>';
?>
dzięki czemu mogę dopisać nowy komentarz do pliku przez wywołanie strony:
adres_strony/komentarz.php?tresc=Tresc komentarza
równie dobrze mogę wysłać zapytanie z poziomu socketów:
POST /getinfo.php?tresc=Komentarz HTTP/1.1\r\nHost: ...itd

problem jedynie pojawia się ze spacjami (tylko przy wysyłaniu socketów, nie przy wchodzeniu bezpośrednio w link), nie można wysłać
tresc=slowo_a slowo_b
 bo następne słowo po spacji zostanie potraktowane jako nowy argument (cudzysłów ani apostrof nie załatwia sprawy, &nbsp; także nie przechodzi)
trzeba zatem przed wysłaniem socketa zamienić wszystkie spacje na jakiś mało używany znak po czym w skrypcie php na odwrót
jest pewnie na to lepszy sposób ale ten też działa ;)
P-26106
1 « 2 » 3
Poprzednia strona Strona 2 z 3 Następna strona