Torna indietro   AlterVista | Spazio web gratis, hosting free php mysql > L'angolo del webmaster > PHP, MySql e Apache (.htaccess)

Rispondi
 
LinkBack Strumenti discussione Modalità visualizzazione
  #1 (permalink)  
Vecchio 04-02-2012, 16.06.39
Neofita
 
Data registrazione: 10-06-2010
Messaggi: 6
Predefinito problema con invio mail per info

Ho un problema, avevo una pagina sul mio sito in altervista in cui c'era la classica form in cui potevo mandare una mail per richeidere informazioni, ed andava tutto bene
Mi serviva la stessa cosa su un altro sito e ho copiato lo stesso file, mettendolo nel nuovo sito però non funziona
O almeno, funziona a metà, visto che la mail viene ricevuta ma senza il contenuto del messaggio, e viene generato l'errore
Invalid argument supplied for foreach()

il codice della form è questo

Codice PHP:
<form name="form1" id="form1" method="post" action="mail.php">
                

Nome</p> <input type="text" name="nome" /> </p>
                

Cognome</p> <input type="text" name="cognome" /> </p>
                

Email</p> <input type="text" name="email" /> </p>
                

Contenuto</p> <textarea name="contenuto" cols="50" rows="10"></textarea> </p>
                


<
input name="Invia" type="submit" value="Invia" /> </p>
</
form

mentre quello di mail.php è questo

Codice PHP:
<?php
// ************Inizio Configurazione***************
//Indirizzo emai a cui inviare i msg
$mailto "indirizzo email di arrivo";
//Oggetto della mail
$subject "Info";
//Pagina da mostrare dopo l'invio
$redirect "pagina dove dopo va";
// ************Fine Configurazione****************


foreach($HTTP_POST_VARS as $key => $value) {

$message .= $key ': ' $value;
$message .= "\n";

}
if (@
mail($mailto$subject$message)) {

header("Location: $redirect");
} else {
// Messaggio in caso di errore
 
echo('

Impossibile inviare. Torna nella pagina precedente e prova ancora, grazie.</p>'
);
}
?>
mi da l'errore PHP Warning: Invalid argument supplied for foreach() nella pagina email.php alla linea 12, cioè
Codice PHP:
foreach($HTTP_POST_VARS as $key => $value) { 
cosa può essere?
L'unica cosa che ho cambiato è mettere la form in una pagina .php e cambiare l'indirizzo email di destinazione e la pagina dove va poi dopo
Facendo un po' di prove, rimettendo gli stessi file originali che avevo nell'altro la situazione non cambia
Il dominio in cui ho fatto questo altro sito è bluehost, possibile che sia così diverso che non accetti il post?

Ultima modifica di morpheus90 : 04-02-2012 alle ore 16.30.11
Rispondi citando
  #2 (permalink)  
Vecchio 04-02-2012, 16.39.34
Neofita
 
Data registrazione: 10-06-2010
Messaggi: 6
Predefinito

niente risolto, col php 5 si usa $_POST e non più $HTTP_POST_VARS, accidenti a me a non averci guardato prima!
Rispondi citando
Rispondi

Strumenti discussione
Modalità visualizzazione

Regole di scrittura
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is Attivato
Le faccine sono Attivato
Il codice [IMG] è Attivato
Il codice HTML è Disattivato
Trackbacks are Attivato
Pingbacks are Attivato
Refbacks are Disattivato



Tutti gli orari sono GMT +1. Adesso sono le 06.36.49.