Dla tych co sobie nie mogą poradzić z bramką SMS na sieć idea zamieszczam listing Pliku idea_rotate.php
[php:1:49e689da19]<?php
# PHPsms v.03.05.2003
#
# Autor: Tomek 'zeniu' Zeńczak <zeniu@poczta.onet.pl>
#
http://phpsms.scrypty.com
#
http://www.phpsms.prv.pl
#
# Poprawił: Rafał Dorobisz 'Zbawca' <zbawca1@o2.pl>
#
$REMOTE_ADDR= getenv ("REMOTE_ADDR");
$rotate_debug_on=true;
include ('phpsms-config.inc.php');
function rotate_debug ($info) {
global $rotate_debug_on;
if ($rotate_debug_on==true) {
if (is_array($info)) print_r($info);
else echo $info;
echo "<BR>rn";
}
}
function pobierz_http ($link, $ile, $naglowek="tak", $referer="") {
// zwraca zawartosc strony razem z naglowkiem, w przypadku bledu 0
$link2=explode("/",$link);
$serwer=$link2[0]; //serwer
for($x=1; $link2[$x]; $x++)
$plik.= "/".$link2[$x]; //katalog i plik
if (!$plik)
$plik="/";
if ($referer)
$referer="Referer: http://$refererrn";
$fp=fsockopen($serwer,80,&$errno,&$errstr,3); //timeout=3s
if (!$fp) {
rotate_debug ("PROBLEM Z POLACZENIEM: $errno - $errstr");
return 0;
}
fputs($fp,"GET $plik HTTP/1.0rn".$referer."Accept: */*rnAccept-Language: plrnAccept-Encoding: gzip, deflaternUser-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows 98)rnHost: $serwerrnrn");
$dane= fread($fp,$ile+500); // dane
if ($plik=="/default.aspx")zapisz($dane,"tmp/idea.www");
fclose($fp);
if (!strpos($dane, "200 OK"))
return 0;
else {
if ($naglowek!="tak")
$dane=substr($dane,strpos($dane,"rnrn")+4);
return $dane;
}
}
function pobierz_dane(&$link, &$token) {
$dane=pobierz_http("213.218.116.131/default.aspx",100000);
$tmp=strstr ($dane,"<input type="hidden" name="token" value=""); // obciecie tekstu
$tmp=strstr ($tmp,"ue=""); // obciecie tekstu
$tmp=substr($tmp,4);
$tmp=substr($tmp,0,strpos($tmp,"""));
$link="213.218.116.131/rotate_token.aspx?token=$tmp"; // do zwrotu
$token=$tmp; // do zwrotu
}
function zapisz($dane, $gdzie) {
$fi=fopen ($gdzie,"w");
fwrite($fi, $dane);
fclose($fi);
chmod ($gdzie,0777);
}
function czytaj_katalog($katalog) {
$handle=opendir($katalog);
while ($file = readdir($handle)) {
if($file!='.' && $file!='..')
$pliki[]=$file;
}
return $pliki;
}
function wymaz_stare_pliki($katalog, $sec_wiek_idea, $dni_wiek_plus) {
$pliki=czytaj_katalog($katalog);
for ($x=0; $pliki[$x]; $x++) {
$modtemp=filemtime ("$katalog/$pliki[$x]");
$dzien=date("d");
$dzien_mod=date("d",$modtemp);
$teraz=mktime (date("G"),date("i"),date("s"),date("m") ,date("d"),date("y"));
if (($teraz-$modtemp>=$sec_wiek_idea && strpos($pliki[$x],"dea")) ||
($dzien-$dzien_mod>=$dni_wiek_plus && strpos($pliki[$x],"lus")))
unlink("$katalog/$pliki[$x]");
}
}
###################################
wymaz_stare_pliki($KATALOG_TMP, 600, 1); // 10 minut dla plikow idea, 1 dzien dla plusa
pobierz_dane(&$link, &$token);
if ($link && $token && $REMOTE_ADDR) {
zapisz ($token,"$KATALOG_TMP/idea_token-$REMOTE_ADDR.txt");
if ($IDEA_TOKEN_REDIRECT!=true) {
$obrazek=pobierz_http($link,100000,"nie", "sms.idea.pl");
header ("Content-Type: image/jpeg");
header ("Cache-Control: no-cache, must-revalidate");
header ("Pragma: no-cache");
echo $obrazek;
}
else
header ("Location: http://$link");
}
else
header ("Location: $KATALOG_TMP/blad.jpg");
?>[/php:1:49e689da19]
W funkcji send_idea która się znajduje w pliku phpsms-funkcje_bramek_php.inc.php
należy zmienić linijkę
[php:1:49e689da19]<?php
fputs($fp,"POST /sendsms.asp HTTP/1.0nReferer:
http://213.218.116.131/nContent-type: application/x-www-form-urlencodednHost: 213.218.116.131nContent-length: $sizen".$cookie."n$postn");
?>[/php:1:49e689da19]
na
[php:1:49e689da19]<?php
fputs($fp,"POST /sendsms.aspx HTTP/1.0rnReferer:
http://sms.idea.pl/default.aspxrnContent-type: application/x-www-form-urlencodedrnHost: 213.218.116.131rnCookie: inboxidsv=; inboxid=; allowload=rnContent-length: $sizernrn$postrn");
?>[/php:1:49e689da19]
teraz SMSy już wychodzą do sieci idea teraz zostało nam odczytanie strony zwrotnej czy sms został wysłany
Aby to zrobić należy zamienić kilka linijek
[php:1:49e689da19]<?php
if (strpos($tmp, "tekstowa zosta")) $status=1;
if (strpos($tmp, "limit")) $status=2;
if (strpos($tmp, "nie ma aktywnej")) $status=33;
if (strpos($tmp, "default.aspx?text")) $status=34;
?>[/php:1:49e689da19]
na
[php:1:49e689da19]<?php
if (strpos($tmp, "SMS zosta")) $status=1;
if (strpos($tmp, "nie ma aktywnej")) $status=33;
if (strpos($tmp, "o, SMS nie zosta")) $status=34;
?>[/php:1:49e689da19]
Miłego smsowania do idei.
Jak by były jeszcze jakieś problemy to piszcie.