Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: fsockopen problem
Forum PHP.pl > Forum > PHP
skrzypol
Mam taki maly skrypt ktory ma za zadanie polaczyc sie z serwerem
grup dyskusyjnych i przeslac tam maila:

Sek w tym ze na jednym serwerze mi dziala bez problemu a na drugim na ktorym
chcialbym zeby dzialal nie dziala.
Tzn wywoluje sie poprawnie bez zadnych bledow ale nic nie wysyla.

Pytanie czy wie ktos moze jakie zmienne serwera APACHE odpowiadaja za taki
blad, bo podejrzewam ze tu tkwi problem?questionmark.gif

Lub gdzie indziej tkwi blad?questionmark.gif
GeoS
Moze tkwic w zablokowaniu adresu spod ktorego piszesz przez admina serwera news.
Krotko mowiac: czytac mozesz, pisac nie.

PS W innych wypadkach przeanalizuj odpowiedzi serwera news - powinny byc jakies komunikaty (czy sie powiodlo, czy byly bledy, ...).
adwol
Cytat
Mam taki maly skrypt ktory ma za zadanie polaczyc sie z serwerem
grup dyskusyjnych i przeslac tam maila:

Chodzi Ci o usenet czy zwykłą pocztę?
Cytat
Sek w tym ze na jednym serwerze mi dziala bez problemu a na drugim na ktorym
chcialbym zeby dzialal nie dziala.
Tzn wywoluje sie poprawnie bez zadnych bledow ale nic nie wysyla.

Pokaż kawałek kodu bo mamy deficyt wróżek.
skrzypol
Dokladnie chodzi mi o usenet, mam strone z ogloszeniami motoryzacyjnymi i chce aby skrypt wysylal maila na grupe samochody.gielda

oto kawalek kodu
wczesniej zmienna post jest stosowanie przygotowana za pomaca funkcji imap_mail_compose i z tym jest wzystko ok bo sprawdzalem pokazuje co trzeba.

$server = 'news.tpi.pl';
$port = 119;

$sh = fsockopen($server, $port) or die ("Nie mogę połączyć się z $server.");
fputs($sh, "POSTrn");
fputs($sh, $post);
fputs($sh, ".rn");
fclose($sh);
adwol
Cytat
[php:1:99625dd8d6]<?php
$server = 'news.tpi.pl';
$port = 119;

$sh = fsockopen($server, $port) or die ("Nie mogę połączyć się z $server.");
fputs($sh, "POSTrn");
fputs($sh, $post);
fputs($sh, ".rn");
fclose($sh);
?>[/php:1:99625dd8d6]

I to jest wszystko? To ja się nie dziwie, że to nie działa.
Po pierwsze wypadałoby sprawdzać odpowiedzi serwera i je wypisywać gdy coś pójdzie nie tak. Poza tym w dzisiejszych czasach większość serwerów newsowych wymaga autoryzacji przy wysyłaniu listów spoza sieci którą obsługują, więc może i o to chodzi.

Najlepiej jednak skorzystać z funkcji imap_* bo tam to jest już zrobione.
skrzypol
adwol chciales czesc skryptu to ci pokazalem, nie chce podawac calego zeby spamerzy nie robili potem z tego uzywki, poza tym napisalem powyzej ze wykorzystalem funkcje imap_* i zmienna z naglowkami i textem mam przygotowana odpowiednio.

Poza tym jakbys czytal uwaznie to skrypt mi dziala tylko z jednego serwera a z drugiego nie i tu mam problem :x
adwol
Cytat
Poza tym jakbys czytal uwaznie to skrypt mi dziala tylko z jednego serwera a z drugiego nie i tu mam problem :x

Chodziło mi o to żebyś skorzystał z funkcji imap_* do wysyłania postu a nie tylko do jest konstruowania.
Poza tym, ten kawałek skryptu wygląda na funkcjonalną całość, otwiera połączenie, coś wysyła i zamyka. Dlatego napisałem, żebyś sprawdzał to co odpowiada serwer bo tam zapewne leży odpowiedź na Twoje pytanie. Jeśli kod działa na jednej maszynie a na innej nie to obstawiałbym brak autoryzacji na tej drugiej.
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.