Per un mio sito ho realizzato uno script in php che genera un captcha, per fare in modo che l'utente possa cambiarlo in caso non sia leggibile ho inserito un pulsante, ma questo al momento fa semplicemente il refresh dell'intera pagina.
Io vorrei fare in modo invece che avvenisse una cosa di questo tipo al click del pulsante:
- viene inviata una richiesta alla pagina php contenente lo script per la generazione dell'immagine captcha
- nella pagina visualizzata cambia solo l'immagine, inserendo quella nuova generata dallo script
Premesso che sono agli inizi con AJAX, ci sto provando ma non ci riesco.
Il pulsante è così
L'immagine si trova in una cella di una tabella ed è così impostataCodice PHP:<input type="button" name="invia" value="Cambia codice" onclick="changeCode()" />
Per quanto riguarda la funzione, all'inizio, avevo provato semplicemente a richiamare l'attributo src in questo modoCodice PHP:[img]captcha.php[/img]
oppure a mettere un div contenente l'immagine, in questo modoCodice PHP:document.getElementById("code").src = 'captcha.php';
e cambiare l'innerHTML del div riscrivendo completamente il tag <img> in questo modoCodice PHP:<div id="code">
[img]captcha.php[/img]
<div>
Ovviamente non ha funzionato nessuna delle due soluzioni, altrimenti non sarei qui.Codice PHP:document.getElementById("code").innerHTML = '[img]captcha.php[/img]';
Qual è il modo corretto per fare ciò che vorrei?

Rispondi quotando
). In questo modo, cambiando l'indirizzo, il browser "capisce" che è una nuova richiesta, perchè il caricare delle immagini sono solo richieste fatte tramite GET. Puoi mettere quello che vuoi frasi, numeri, parole. L'importante è che quando imposti l'attributo "src"
