Scrivere da pagina .php su altra pagina .html

armando31

Nuovo Utente
15 Ago 2015
21
0
1
Ciao a tutti, volevo chiedervi una mano su una cosina che , forse sarà banale....ma io non la conosco.

Vi spiego.

Ho un semplicissimo form per inserire nome, cognome, e-mail, telefono (form.html)
Che utilizza la pagina (upload.php) per inserire i dati all'interno del database mysql alla pressione del tasto inserisci.

Ora quando vengono inviati i dati verifico che il nome utente non sia presente all'interno dell'db, effettuando il controllo sul campo mail
HTML:
$verificaMail = mysql_query("SELECT mail FROM listaamici WHERE mail = '$mail'");
$contaMail = mysql_num_rows($verificaMail);

Se la mail non è presente i dati vengono correttamente inseriti nel database, e si riceve un messaggio di corretto inserimento
se invece la mail è presente i dati non vengono inseriti e si riceve un messaggio di errore

Ora la mia domanda è:

Volendo fare in modo che i messaggi compaiano sulla pagina dove è presente il form (form.html) e non , come avviene attualmente sulla pagina (upload.php)

Come potrei fare?

L'opzione di utilizzare una singola pagina per codice .php e codice .html l'ho scartata in partenza perchè altrimenti sarebbero visibili a chiunque informazioni inserite nel codice .php che non voglio siano visibili. Nomi delle tabelle, dei campi, query...etc..

Grazie
 
Ciao,
hai un pò di confusione... Il php è un linguaggio lato server, nelle pagine nessuno può vedere il tuo codice anche se la pagina è .php e una pagina html non può memorizzare i dati inviati, deve essere necessariamente php.
Quindi ricapitolando, fai una sola pagina che nessuno ti sbircia il codice...
 
Ciao altra soluzione è usare una chiamata asincrona con ajax verso la pagina upload.php e visualizzare i risultati nella pagina del form in html.
 
Grazie per il chiarimento filomeni :)

migo80

mi faresti un esempio pratico?.....detta così non sono in grado di capire.....
 
Ciao il codice che ti posto è quello che uso io di solito:

HTML:
<!DOCTYPE html>
<html>
<head>
<script src="js/jquery.js"></script><!-- devi richiamare jquery nella pagina-->
</head>
<body>
<form action="post" id="my_form">
    <input type="text" id="nome" name="nome"/>
    <input type="text" id="cognome" name="cognome"/>
    <input type="text" id="mail" name="mail"/>
    <input type="text" id="phone" name="phone"/>
<button type="submit" id="send">Invia</button>
</form>

<div id="esito"></div><!-- Questo div conterrà i messaggi di risposta dello script presente in upload.php. P.S. Puoi posizionarlo dove meglio credi -->
<script>
  	$("#send").click(function(e){
		e.preventDefault();
		var nome = $("#nome").val();
		var cognome = $("#cognome").val();
		var mail = $("#mail").val();
		var phone = $("#phone").val();
		$.ajax({
			type: "POST",
			url: "upload.php",
			data: {  nome: nome,
				   cognome: cognome,
			           mail: mail,
				   phone: phone}
		})
		.done(function( msg ) {
			$('#esito').html(msg);
		})
			.fail(function() {
			alert('Si è verificato un errore tecnico. Riprovare.');
		});
	});


  </script>
</body>
</html>
 

Discussioni simili