Codice invio sms da integrare

  • Creatore Discussione Creatore Discussione ferri
  • Data di inizio Data di inizio

ferri

Nuovo Utente
15 Lug 2011
26
0
0
Salve a tutti ho il seguente problema:
ho questo codice che da solo funziona perfettamente.
PHP:
<?php
$mess=valore esterno
var_dump(httpPost(array(
'user' => '',
'pass' => '',
'rcpt' => '+39',
'data' => $mess ,
'sender' => 'io',
'qty' => 'h'
),
'sms.tol.it'
));

function httpPost($fields, $host = 'sms.to.it', $url =
'/sms/send.php')
{
$qs = array();
foreach ($fields as $k => $v)
$qs[] = $k.'='.urlencode($v);
$qs = join('&', $qs);

$errno = $errstr = '';
if ($fp = @fsockopen('sms.tol.it', 80, $errno, $errstr,
30))
{
fputs($fp, "POST ".$url." HTTP/1.0\r\n");
fputs($fp, "Host: ".$host."\r\n");
fputs($fp, "User-Agent: PHP/".phpversion()."\r\n");
fputs($fp,
"Content-Type:application/x-www-form-urlencoded\r\n");
fputs($fp, "Content-Length: ".strlen($qs)."\r\n");
fputs($fp, "Connection: close\r\n");
fputs($fp, "\r\n".$qs);

$content = '';
while (!feof($fp))
$content .= fgets($fp, 1024);

fclose($fp);

return preg_replace("/^.*?\r\n\r\n/s", '', $content);
}

return false;
}

?>
il codice serve per inviare un sms tramite un gestore esterno.
Io vorrei che il codice di sopra si avviasse dopo una certa condizione e quindi ho provato a metterlo in due modi:
1) if (condizione){codice di sopra}
2) function invio ($mess) {codice di sopra}
e richiamo della funzione invio($mess)
ma non funziona nessuna delle due , mi potete aiutare?
grazie
 
Ultima modifica di un moderatore:
Prova cosi:

PHP:
<?php

$mess = "valore esterno";
// qui metti la condizione che vuoi
if ($condizione == 'vera') {
    var_dump(httpPost(array(
                'user' => '',
                'pass' => '',
                'rcpt' => '+39',
                'data' => $mess,
                'sender' => 'io',
                'qty' => 'h'
                    ), 'sms.tol.it'
            ));
}// chiudi la if

function httpPost($fields, $host = 'sms.to.it', $url =
'/sms/send.php') {
    $qs = array();
    foreach ($fields as $k => $v)
        $qs[] = $k . '=' . urlencode($v);
    $qs = join('&', $qs);

    $errno = $errstr = '';
    if ($fp = @fsockopen('sms.tol.it', 80, $errno, $errstr, 30)) {
        fputs($fp, "POST " . $url . " HTTP/1.0\r\n");
        fputs($fp, "Host: " . $host . "\r\n");
        fputs($fp, "User-Agent: PHP/" . phpversion() . "\r\n");
        fputs($fp, "Content-Type:application/x-www-form-urlencoded\r\n");
        fputs($fp, "Content-Length: " . strlen($qs) . "\r\n");
        fputs($fp, "Connection: close\r\n");
        fputs($fp, "\r\n" . $qs);

        $content = '';
        while (!feof($fp))
            $content .= fgets($fp, 1024);

        fclose($fp);

        return preg_replace("/^.*?\r\n\r\n/s", '', $content);
    }

    return false;
}
?>

Ma ti serve il var_dump() della funzione? in pratica ti stampa il contenuto che passi

Racchiudi il codice che posti tra i tag che trovi sulla barra di formattazione dei messaggi (icone PHP CODE HTML) in questo caso PHP
 

Discussioni simili