Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11
  1. #1

    Inserire dati nel db con ajax

    Ciao a tutti io dovrei da un form semplicissimo

    <input type="text" name="messaggio">
    <input type="hidden" name="id" value="1">

    dovrei inserire il contenuto di messaggio nel database alla pressione di un bottone

    Fin qui non sarebbe nulla di complicato se non fosse che lo vorrei faer in ajax

    Mi potete dare qualche dritta ?

  2. #2
    Utente di HTML.it L'avatar di krumiro
    Registrato dal
    Apr 2002
    Messaggi
    180

    ..

    devi fare una richiesta POST.

    Qui trovi qualcosa.
    http://www.captain.at/howto-ajax-form-post-request.php

  3. #3
    codice:
    <script type="text/javascript" src="LoadVars.js"></script>
    <script type="text/javascript">
    function sendMessage(id, message) {
    	var id = document.getElementById(id).value;
    	var msg = document.getElementById(message).value;
    	if(message.replace(' ', '').length > 0) {
    		var lv = new LoadVars();
    		lv.id = id;
    		lv.message = msg;
    		lv.onLoad = function(s) {
    			if(!s || this.result != 'OK')
    				alert("Problemi durante l'invio del messaggio");
    			else
    				alert("Messaggio inserito con successo");
    		}
    		lv.sendAndLoad('http://localhost/message.php', lv, 'POST');
    	}
    }
    </script>
    <body>
    <input type="text" id="message" name="messaggio">
    <input type="hidden" name="id" value="1">
    <input type="button" value="inserisci il messaggio" onclick="sendMessage('id', 'message');">
    </body>



    message.php
    codice:
    if(isset($_POST['id'], $_POST['message'])) {
    	// query o quello che ti pare
    	if($query)
    		echo 'result=OK';
    }
    Formaldehyde a new Ajax PHP Zero Config Error Debugger

    WebReflection @WebReflection

  4. #4
    ho scaricato il loadvars ma mi da errore

  5. #5
    Originariamente inviato da stefano3804
    ho scaricato il loadvars ma mi da errore
    che errore ti da ? ... a me mai un problema ...
    Formaldehyde a new Ajax PHP Zero Config Error Debugger

    WebReflection @WebReflection

  6. #6
    sto provando anche cosi :
    codice:
    <script type="text/javascript" language="javascript">
       var http_request = false;
       function makePOSTRequest(url, parameters) {
          http_request = false;
          if (window.XMLHttpRequest) { // Mozilla, Safari,...
             http_request = new XMLHttpRequest();
             if (http_request.overrideMimeType) {
                http_request.overrideMimeType('text/xml');
             }
          } else if (window.ActiveXObject) { // IE
             try {
                http_request = new ActiveXObject("Msxml2.XMLHTTP");
             } catch (e) {
                try {
                   http_request = new ActiveXObject("Microsoft.XMLHTTP");
                } catch (e) {}
             }
          }
          if (!http_request) {
             alert('Cannot create XMLHTTP instance');
             return false;
          }
          
          http_request.onreadystatechange = alertContents;
          http_request.open('POST', url, true);
          http_request.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
          http_request.setRequestHeader("Content-length", parameters.length);
          http_request.setRequestHeader("Connection", "close");
          http_request.send(parameters);
       }
    
       function alertContents() {
          if (http_request.readyState == 4) {
             if (http_request.status == 200) {
                //alert(http_request.responseText);
                result = http_request.responseText;
                document.getElementById('myspan').innerHTML = result;            
             } else {
                alert('There was a problem with the request.');
             }
          }
       }
       
       function get(obj) {
          var poststr = "mytextarea1=" + encodeURI( document.getElementById("mytextarea1").value ) +
                        "&mytextarea2=" + encodeURI( document.getElementById("mytextarea2").value );
          makePOSTRequest('post.php', poststr);
       }
    </script>
    
    
    <form action="javascript:;" name="myform">
    <textarea id="mytextarea1">my test
    </textarea>
    <input type="hidden" id="mytextarea2" value="44">
    
    
    <input type="button" name="button" value="Submit" 
       onclick="javascript:get(this.parentNode);">
    </form>
    
    <form action="javascript:;">
    <textarea id="mytextarea1">stefa
    </textarea>
    <input type="hidden" id="mytextarea2" value="144">
    
    
    <input type="button" name="button" value="Submit" 
       onclick="javascript:get(this.parentNode);">
    </form>
    
    
    
    
    
    Server-Response:
    
    <hr>
    <span name="myspan" id="myspan"></span>
    <hr>



    Codice PHP:
    <?
    print_r
    ($_POST);
    ?>

    e "diciamo" che funziona solo con un form
    se io ne metto 2 (come ho postato ) quando faccio submit lui mi stampa sempre e solo il primo

  7. #7
    Originariamente inviato da andr3a
    che errore ti da ? ... a me mai un problema ...
    Mi dice :

    Problemi durante l'invio del messaggio

  8. #8
    Originariamente inviato da stefano3804
    Mi dice :

    Problemi durante l'invio del messaggio
    allora o non trovi la pagina .php oppure non stampi in output, una volta fatto tutto

    result=OK


    cosa FONDAMENTALE
    Formaldehyde a new Ajax PHP Zero Config Error Debugger

    WebReflection @WebReflection

  9. #9
    e no non me la stampa result=OK

  10. #10
    ok, l'altro non l'avevo provato ... eccoti quello che da me va senza problemi
    codice:
    <html>
    <script type="text/javascript" src="LoadVars.js"></script>
    <script type="text/javascript">
    function sendMessage(id, message) {
    	var id = document.getElementById(id).value;
    	var msg = document.getElementById(message).value;
    	if(message.replace(' ', '').length > 0) {
    		var lv = new LoadVars();
    		lv.id = id;
    		lv.message = msg;
    		lv.onLoad = function(s) {
    			if(!s || this.result != 'OK')
    				alert("Problemi durante l'invio del messaggio");
    			else
    				alert("Messaggio inserito con successo");
    		}
    		lv.sendAndLoad('message.php', lv, 'POST');
    	}
    	else
    		alert('Vuoi scrivere qualcosa o no ?');
    }
    </script>
    <body>
    <input type="text" id="message" />
    <input type="hidden" id="id" value="1" />
    <input type="button" value="inserisci il messaggio" onclick="sendMessage('id', 'message');">
    </body>
    </html>


    message.php
    codice:
    <?php
    if(isset($_POST['id'], $_POST['message']))
    	echo 'result=OK';
    ?>

    ovviamente devi lanciare da localhost senno' il php non viene interpretato
    Formaldehyde a new Ajax PHP Zero Config Error Debugger

    WebReflection @WebReflection

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.