- Home
- Categorie
- Coding e Sistemistica
- PHP
- [Risolto] [php]Pagina di invio non visibile
-
Ecco, spostando il controllo nel file di invio ti risparmi anche il controllo in quello con il form (probabilmente fatto in jkavascript).
Prova e fammi sapere.
-
No Probabilemente...è javascript....ehehehe...
ok, adesso ci provo e aggiorno.
Grazie mille!
-
Se me lo permettete...
aggiungerei che il controllo sui cambi obbligatori (e non solo), se implementato solo con javascript non è sicuro...
Se mai potrebbe essere un qualcosa in più per avvisare l'utente di un' errata compilazione del form prima di tentare l'invio...
Ti suggerirei anche di controllare i dati che vengono immessi nel form, specialmente se vengono salvati in un database, onde evitare sql injection.
Ciao!
-
10 minuti dopo.
Credo che non faccia quello che deve o di sicuro l'ho messo male io ...
Ho messo quello che mi hai scritto al posto dello script che ho scritto io...ogni volta che invio mi dice che la form nn è stata compilata...anche se la compilo...
bua...Per ora niente database...Grazie di avermelo detto.:)
-
Ehm...errore mio. Prova a cambiare l'if con questo (o cmq a manovrarci un pò):
if (!($_POST['object'] = "") && !($_POST['body'] = ""))
-
Vediamo vediamo..
-
Bua...non va...mi da sempre il messaggio...
-
da quanto ho capito vuoi limitare l'entrata in una pagina solo a che è passato dal form?
se si, prova questo:
if($_SERVER['HTTP_REFERER'] != "http://www.iltuosito.com/latuapagina.php")
{
echo "<script>
setTimeout('location.href="http://www.iltuosito.com/latuapagina.php"',1);
</script>
";
die();
}tutto questo deve essere aggiunto al controllo sul input in php che, come già detto è poco sicuro
fatemi sapere!
-
Grazie mille, provo e ti faccio sapere.
-
Nullla...bua...
Se digito www.miosito.it/invio.php che + la pag dove si trova la conferma dell'invio...senza passare dal form che è in contatti mi spedisce una mail vuota...
-
io modificherei l'ultimo if di SHAD da
if (!($_POST['object'] = "") && !($_POST['body'] = "")){
}in
if ((trim($_POST['object']) != "") && (trim($_POST['body']) != "")) {
$to = "[email protected]";
$subject = $_POST['object'];
$body = $_POST['body'];
$headers = "From: " . $_POST['mail'] . "\n";
mail($to,$object,$body,$headers);
}
else {
echo "Errore, devi compilare il modulo per inviare una mail";
}facci sapere
bye bye
-
Ehehhehe...adesso indico un concorso,
grazie di tutti i suggerimenti...provo anche quest ultimo.
Grazie mille...
VI faccio sapere si!
-
Pikadilly credo che sia più corretto vedere se la variabile $_POST sia settata, in quanto se il pb è se viene chiamata
o il file direttamente senza form allora $_POST non è neanche impostata quindi basta fare if (isset($_POST)) {invia} else {qualcosaltro}bye bye
-
Riporto up la discussione perchè ad un mese e mezzo dal primo post ho capito dove sbagliavo.
Il codice
<?php
if ((trim($_POST['object']) != "") && (trim($_POST['body']) != "")) {
$to = "[email protected]";
$subject = $_POST['object'];
$body = $_POST['body'];
$headers = "From: " . $_POST['mail'] . "\n";
mail($to,$object,$body,$headers);
echo"La mail è stata inviata correttamente";
}
else {
echo "Errore, devi compilare il modulo per inviare una mail";
}
?>
Lo mettevo in cima alla pagina, prima del doctype, in verità lo script che mi mi avete suggeito ha sempre funzionato solo che la pagina era nera e quando dal browser accedevo a invio.php la scritta di errore non appariva (sono da ricovero).
Ho messo tutto nel body ed ora è perfetto.
Vi ringrazio immensamente.
-
Grazie pikadilly per aver condiviso la soluzione del problema.
Segnalo come risolto
-
E' lo scopo del forum.:)
Mi dispiace solo di averci messo tanto, è vero che per un pò ho abbandonato il problema usando asp, ma poi mi sono detta che asp mi sta antipatico e che non potevo non capire il punto.
Grazie ancora.