[php] [wml]wysylanie mesow idea

0

Witajcie mam taki problem. zrobilem sobie stronke na telefony do wysylania mesow na idee plusa i ere. na ere i plusa dziala bez problemu ale natomiast nie moge zrobic na IDEE problem polega na tym ze wchodze na strone swoja index WML i wysweitla sie pole do wpisania: nadawcy, numeru,tresci,i koduz obrazka.
oczywisciw wchodzac na index.wml skrypt php otwiera strone SOCKOPEN wchodzi na sms.idea.pl i odczytuje TOKEN nastepnie ten token otwiera obrazek i wysweitla go po zaladwoaniu strony INDEX.WML a kiedy podaje kod z obrazka i wciskam WYSLIJ wiadomosc to wszytskie dane przezuje do kolejnego skryptu i on laczy sie z SMS.IDEA.PL i p[rzesyla dane z formularza natomiast SMS nie dochodzi.
Czy to mzoe byc blad jakis ze jak otworze stronesms.idea.pl i skopiuje token a nastepnie zamkne stroone to ten token juz nie dziala ?

ponizej zamieszcze kody moze ktos mi pomoze.

ten kod umieszczamy w pliku nap pod nazwa INDEX.PHP


<?php
   header ("Content-type: text/vnd.wap.wml");
   echo "<?xml version=\"1.0\"?>";

$data = "GET / HTTP/1.0
User-Agent: Mozilla/4.0 (compatible; MSIE 5.5; Windows 98; Win 9x 4.90; .NET CLR 2.0.40607)
Host: sms.idea.pl


";

$sock = fsockopen('sms.idea.pl', 80);


fputs($sock, $data); $html = "";

while(!feof($sock)) $html .= fgets($sock, 4096);

fclose($sock);

preg_match('/en=(.{0,36})/', $html, $matches);


$tokenik=$matches[1]; 

?>

<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN"
                   "http://www.wapforum.org/DTD/wml_1.1.xml">
   <wml>
    <card id="card1" title="IDEA">
    


 <p><small>Nadawca:</small><br/>
 <input type="text" name="nadawca"  /> <br/>


    <small>Podaj numer:</small><br/>
 <input type="text" name="nr" format="NNNNNNNNN" /><br/>


 <small>Podaj tresc:</small><br/>
 <input type="text" name="tresc"  /><br/>



 <small>Kod z obrazka:</small><br/>
 <input type="text" name="kod"  /><br/>
 </p>

<p>
 <img alt="poczekaj na logo zaraz sie wczyta"  src="http://sms.idea.pl/rotate_token.aspx?token=<?PHP echo $tokenik ?>" />
</p>

 <p>

<anchor title='OK'>Wyslij
<go href='/sendidea.php' method='post'>
<postfield name='nadawca' value="$nadawca"/>
<postfield name='nr' value="$nr"/>
<postfield name='tresc' value="$tresc"/>
<postfield name='kod' value="$kod"/>
<postfield name='tok' value="<?PHP echo $tokenik ?>"/>
</go>
</anchor>


</p>


    </card>
   </wml>

jak widac z kodu po wejsciu na tes trone przez przegladarke WAP
lub mozna zrobic na zwykly php wysweitla sie obrazek i przekzuje dane do skryptu o nazwie SENDIDEA.PHP

a moj plik sendidea.php jest nastepujacy

<?php
   header ("Content-type: text/vnd.wap.wml");
   echo "<?xml version=\"1.0\"?>";
  ?>

<?php

function wyslij($numer,$wiadomosc,$nadawca,$tok,$kod) {

$tresc = urlencode($wiadomosc);


//naglowek 

//$nagl = "Host: sms.idea.pl \r\n";


$nagl = "
User-Agent: Mozilla/4.0 (compatible; MSIE 5.5; Windows 98; Win 9x 4.90; .NET CLR 2.0.40607)
Host: sms.idea.pl
Content-Length: 
";


//cale dane get + nagl zeby zdobyc JSSESIONID
$data = "POST /sendsms.aspx?hdn_ccsave=False&token=".$tok."&SENDER=".$nadawca."&ILE_ZNAKOW=300&RECIPIENT=".$numer."&ILE_SMSOW=1&SHORT_MESSAGE=".$tresc."&MESSAGE_PREV=OD+".$nadawca."%2AOdpisz+szybko+bo+czekam%2A%3A".$tresc."&CHK_RESP=on&respInfo=3&pass=".$kod." HTTP/1.0\r\n".$nagl."\r\n\r\n";


//otwieram strone na porcie 80
$sock = @fsockopen('sms.idea.pl', 80);

//wysylam zapytanie do serera
fputs($sock, $data); $html = "";

//serwer odpowiada zbieram dane do stringa $html
while(!feof($sock)) $html .= fgets($sock, 4096);

//zamykam port
fclose($sock);



}


wyslij($nr,$tresc,$nadawca,$tok,$kod);



?>

<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN"
                   "http://www.wapforum.org/DTD/wml_1.1.xml">
   <wml>
    <card id="card1" title="Status">
     <p align="center">

 Wiadomosc do numeru <?PHP echo $nr; ?><br/>
     zostala dostarczona!<br/><br/>
<a href='index.php'>Nowy sms</a>
     </p>
    </card>
   </wml>

i ten kod powienien wysylac MESA jednak tak sie nie dzieje i
nie moge znalezc bledu

HELP

0

nie wgłębiałem się ale tak mi wpadło w oko:

skoro masz:
<postfield name="tok" value="&lt;?PHP echo $tokenik ?">"/>

to czemu wcześniej jest:
<postfield name="nadawca" value="$nadawca" />
<postfield name="nr" value="$nr" />
<postfield name="tresc" value="$tresc" />
<postfield name="kod" value="$kod" />

a nie:
<postfield name="nadawca" value="&lt;?PHP echo $nadawca ?">"/>
<postfield name="nr" value="&lt;?PHP echo $nr ?">"/>
<postfield name="tresc" value="&lt;?PHP echo $tresc ?">"/>
<postfield name="kod" value="&lt;?PHP echo $kod ?">"/>

BTW:

<?PHP echo 'cos' ?>

jest równoznaczne z:

<?= 'cos' ?> - krócej

1 użytkowników online, w tym zalogowanych: 0, gości: 1