form salva dati DB con alert ajax

Salve, vorrei creare una pagina con form in cui i dati vengono salvati nel DB.

Al click del "aggiungi"(nuovo numero) deve comparire un alert con "vuoi aggiungere il numero?" SI o NO.

se SI,compare l'alert "numero aggiunto" e rimane sulla stessa pagina del form.

Ho provato ad usare ajax ma c'č qualcosa che non funza!!

please, help me!

inserisco pagina form:

<script language="JavaScript" type="text/javascript" src="ajax.js">
</script>
<body>
<h1>Inserisci nuovo numero di telefono</h1>
<form  value='Form_Checker' method="POST" onsubmit="salva(); return false;">
Numero di telefono da inserire: <input type="text" name="numtel" />
<br>
<br>
Note (Opzionale, max 255 caratteri): 
<br>
<textarea rows="4" cols="64" name="info"></textarea>
<br>
<br>
<input  type="submit" name="submit" value="Aggiungi"/>

</form>

<br>
<a href="index.php">Torna al Menu Principale</a><br>

</body>
</html>

pagina con script ajax.js

// funzione per la chiamata dell'oggetto XMLHttpRequest
function ajax(){
  var ajaxRequest;
  try{
    // controllo per i browser diversi da IE
    ajaxRequest = new XMLHttpRequest();
  }catch (e){
    // contorollo per IE
    try{
      ajaxRequest = new ActiveXObject("Msxml2.XMLHTTP");
    }catch (e){
      try{
        ajaxRequest = new ActiveXObject("Microsoft.XMLHTTP");
      }catch (e){
        // controllo per i browser che non supportano l'XMLHttpRequest
        alert("Il browser non supporta questo ShoutBox");
        return false;
      }
    }
  }
  return ajaxRequest;
}


// funzione per il salvataggio dei dati
function salva(){
  htmlRequest = ajax();
  if (htmlRequest==null){ 
    alert ("Il browser non supporta richieste HTTP");
    return;
  } 
  // controlliamo i parametri obbligatori
  if(document.Form_Checker.numtel.value == "" || document.Form_Checker.numtel.value == "NULL" )
  {
    alert('Inserisci il numero di telefono');
    document.Form_Checker.numtel.focus();
    return;
  }
  // inviamo i parametri al file per l'INSERT nel database
  htmlRequest.open('POST', 'copia_commitinsertnumtel.php');
  
   
  htmlRequest.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
  htmlRequest.send('numtel='+document.Form_Checker.numtel.value); 
}


// funzione per mostrare i dati
function mostra() {
  htmlRequest = ajax();
  // controllo nel caso in cui non possa richiamato l'oggetto Xmlhttp
  if (htmlRequest==null){ 
    alert ("Il browser non supporta richieste HTTP");
    return;
  }
  htmlRequest.onreadystatechange = function(){
    // Restituisce lo stato della richiesta
    if(htmlRequest.readyState == 4){
      if (requesterAdd.status == 200) {
         
      var ajaxDisplay = document.getElementById('modulo');
               ajaxDisplay.innerHTML = htmlRequest.responseText;
  
    } 

      /* IE returns a status code of 0 on some occasions, so ignore this case */ 
      else if (requesterAdd.status != 0) { alert("There was an error while retrieving the URL: " + requesterAdd.statusText); } 
   } 

   return true; 
   
}
}

paginaphp per eseguire l'insert

<html>
<body>

<?php
@include 'config.php';

if(isset($_POST[numtel]))
  {
   $numtel=addslashes($_POST['numtel']);
  

 

   $query="INSERT INTO numbers (numTel,info) VALUES('$numtel','$_POST[info]')";
   $result = @mysql_query($query) or die (mysql_error());
  
   @mysql_close(); 
   }

?>



<br>
<br>
<a href="insertnotif.php">Indietro</a> &nbsp <a href="index.php">Torna al Menu Principale</a><br>

</body>
</html>

grazie

inviato 6 anni fa
cp
cp
1
modificato 6 anni fa
Mario Santagiuliana
X 0 X

1- usa i tag code o php per inserire il tuo codice.

2- che cosa non funziona esattamente?

3- modifica la tua pagina php in modo che ci sia il codice di esecuzione di inserimento dei dati e un output (una semplice stringa) che dica che č andato tutto ok o che č andato male.

risposto 6 anni fa
Mario Santagiuliana
X 0 X
Effettua l'accesso o registrati per rispondere a questa domanda