fai un copia incolla di questo carattere, è lo provi in un servizio che non supporta gli accenti.. tipo freesms.net, secondo la tabella utf-8 equivale(non so in windows-1252) in esadecimale 04 end of tag..secondo la tabella gsm il carattere è.
Difatti se provi da gojackweb a fare un invio quel carattere dal gateway sms sarà letto è.
Premessa gli sms si possono inviare in modalità text/plain o UDP.. PERÒ text/plain sarà rappresentato dal suo corrispettivo che può essere tra i seguenti: esadecimale,binario,ottale,decimale ecc.. insomma in modo che capisca che il carattere è equivale a 04hex..
Sarebbe meglio gestire già dal l'input dell'utente?
cioè fare in modo che determinati caratteri da gojackweb con il php li converta nel valore gsm.
Devi tenere conto di tre cose, windows-1252 che è il charset di gojackweb,http 1.1 rfc 2616 è l'alfabeto gsm per far quadrare il tutto.
Colgo l'occasione di dare un' idea per la wap.
la wap deve essere compatibile sia con cellulari che con browser pc, per debug io ho usato get è charset UTF-8. (cambiatelo in windows-1252 è i rispettivi hex)
ecco una bozza incompleta di quel che vorrei *Ps sostituite preg_replace con un array str_replace dell'alfabeto gsm è create la controparte decode gsm che vanno a salvare gli sms inviati<?php
// Non caricare la cache
header ( "Expires: Mon, 26 Jul 1997 05:00:00 GMT" );
header ( "Cache-Control: no-cache, must-revalidate" );
header ( "Pragma: no-cache" );
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<?php
header('Content-Type: text/html; charset=utf-8');
?>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>GoJack Wap</title>
</head>
<body>
<?php
// converto i 5 caratteri illeciti per html/xml
// elimino i codici di controllo
$servizio = htmlspecialchars( ( string ) $_GET['srv'], ENT_QUOTES | ENT_HTML401, 'UTF-8', TRUE);
$servizio = preg_replace( ( string ) "/[\\000-\\040\\177]/", "", $servizio);
$srv = (string) $servizio;
// accetto anche caratteri numerici con segno+
$n_c = ( ( string ) $_GET['num']);
$n_c = preg_replace( (string) "/[\\000-\\037\\177]/", "", $n_c);
if (preg_match("/^[0-9;+]{1,100}\$/", $n_c) !== 1);
$num = (string) $n_c;
var_dump($num);
// converto i 5 caratteri illeciti per html/xml
// elimino i codici di controllo
$textarea = htmlspecialchars( ( string ) $_GET['text'], ENT_QUOTES | ENT_HTML401, 'UTF-8', TRUE);
$textarea
= preg_replace( ( string ) "/[\\000-\\011\\013-\\037\\177]/", "", $textarea);
$textarea = preg_replace( (string) "/[\xc3\xa8]/u", "\x04", $textarea);
$text = ( string ) $textarea;
var_dump($textarea);
?>
<fieldset>
<form name="form_invio_sms"
method="get"
action=""
enctype="application/x-www-form-urlencoded"
accept="text/plain"
accept-charset="UTF-8">
GoJack Wap<br />Servizio<select name="srv"><?php
echo ("<option>");
echo($servizio);
echo("</option>");
?><option>Nome'Servizio1</option><option>Nome'Servizio2</option></select><br />Destinatario<br />Numero<input type="text" name="num" value="<?php
echo ($num);
?>" /><br />Oppure<select name="el"><option>Nome'Contatto1</option><option>Nome'Contatto2</option></select><hr />Testo<br /><textarea name="text"><?php
echo ($textarea);
?></textarea><br /><input type="reset" value="Svuota" />
<input type="submit" value="Invia" />
</fieldset>
</form>
</body>
</html>
si consiglia di aggiungere il name ha submit,reset è di togliere i var_dump.