Newsgroup: it.comp.www.php
Titolo: problema con form

ho una pagina con questo form
<form action="sub2.php" method="post">
E-Mail: <input type="text" name="email">
<br><br><input type="submit" value=" Iscriviti ">
</form>
e questo e sub2.php
<?php
include("config.php");
include("$language");
$fp = fopen("email.dat",a);
fwrite($fp,"$HTTP_POST_VARS[email]\n");
fclose($fp);
echo "<p align=\"center\"><b><font face=\"Verdana\"
size=\"2\">$txt[14]</b><br>
$txt[15]</font></p>";
mail("$owmail","Nuovo iscritto alla $nomeml","C'e' un nuovo iscritto alla
tua MailingList ("$HTTP_POST_VARS[email]")","From: Avviso @ Nuovo
Iscritto");
?>
il problema č che explorer mi risponde cosě:
Warning: Unexpected character in input: '\' (ASCII=92) state=1 in
/home/virtual/site41/fst/var/www/html/moduli_di_altri_siti/beat-les/mailingl
ist/sub2.php on line 2
Parse error: parse error in
/home/virtual/site41/fst/var/www/html/moduli_di_altri_siti/beat-les/mailingl
ist/sub2.php on line 2
dove sbaglio?
ah.
allora languages č il file che contiene i vari messaggi $txt[1] $txt[2] ....
mentre config.php č questo:
<?php
//#########################################
// IMPOSTAZIONI GENERALI #
//#########################################
$nomeml = "xxxxxxxxxxxxxxxxx"; //nome della mailinglist o della newsletters
$owmail = "xx...@xxx.xx"; //la tua e-mail
$script[url] = "www.xxxx.xx";
$passwordz = "xxxxxx"; //psw per accedere al pannello di controllo...
$language = "italiano.lng";
if(!isset($_POST)) $_POST=$HTTP_POST_VARS;

 allora languages č il file che contiene i vari messaggi $txt[1] $txt[2]
Sembra ci sia qualcosa che non va nel file languages oppure nei messaggi
$txt[1] ecc.
La variabile $language e' definita? L'hai mica prestata a qualcuno e non
te l'ha restituita?
Prova a fare l'include del file con il nome completo invece che con la
variabile: se funziona allora e' la variabile che ti manda da qualche
altra parte.
Se apri il file dei linguaggi digitando direttamente il suo indirizzo ti
esce qualche errore?
Buona caccia!
-- 
Marco Bernardini
bernama chiocciola libero it

 bernama chiocciola libero it
<?php
$txt[1] = "Impossibile aprire il file email.dat!!!";
$txt[2] = "Tu non hai iscritti oppure il file non è stato pubblicato.";
$txt[3] = "ISCRITTI alla ";
$txt[4] = "Elenco visualizzato in ordine alfabetico";
$txt[5] = "Controlla i permessi del file email.dat";
$txt[6] = "E-Mail inviate con successo.";
$txt[7] = "La tua sottoiscrizione alla";
$txt[8] = "e' avvenuta con successo.";
$txt[9] = "Per piacere conferma la tua iscrizione clickando qui:";
$txt[10] = "Grazie";
$txt[11] = "Iscrizione avvenuta con successo.";
$txt[12] = "Ti e' stata mandata un'e-mail per confermare la tua
iscrizione.<br>Per favore segui attentamente le informazioni.";
$txt[13] = "Conferma Iscrizione alla";
$txt[14] = "Conferma avvenuta con successo.";
$txt[15] = "Grazie per la tua iscrizione.";
$txt[16] = "La tua e-mail,";
$txt[17] = "è stata eliminata dalla";
$txt[18] = "Se in futuro vorrai riscriverti, clicka sul seguente
indirizzo:";
$txt[19] = "Rimozione dalla ML avvenuta con successo.";
$txt[20] = "Rimozione dalla";
$txt[21] = "Errore !!!";
$txt[22] = "La tua e-mail non è nella nostra lista.";
$txt[23] = "L'e-mail inserita non è nella lista.";
$txt[24] = "E-Mail aggiunga con sucesso alla lista.";
$txt[25] = "Password Errata !!!";
$txt[26] = "L'amministratore della $nomeml ti ha cancellato dalla sua
MailingList";
$txt[27] = "Per favore inserisca un indirizzo e-mail valido...";
?>

 ?>
Toh, c'era un apostrofo...
Prova a fare un file "italiano.lng" con i soli testi canonici
$txt[1] = "pippo";
$txt[2] = "pluto";
$txt[3] = "paperino";
e guarda cosa succede.
Se funziona aggiungi le tue stringhe una ad una fino a quando non si
incricca, cosi' riesci a capire qual'e' l'intrigante.
A volte succede che gli apostrofi vengano escappati automaticamente
con uno slash \' e quindi ti potrebbero dare dei problemi.
ciao
