Buongiorno,
ooops ...mi è 'scappato AJAZ al posto di AJAX avrei voluto correggere l'errore ma non ci sono riuscito,
chiedo scusa ...
ho un form scritto in php nel quale nel quale ci sono tre input box che onblur() caricano l'immagine
colegata al codice inserito.
Al comando onblur() è collegato uno script AJAX che mostra le immagini senza ricaricare ogni volta la pagina.
Il mio problema è il seguente, vorrei che lo script venisse invocato da un pulsante al comando on click
ho provato quindi a così lo script ed il comando :
Questo è il DIV dove si vedrà l'immagine
Codice HTML:
<div class="col-md-4 text-center mx-auto" id="txtGint1" > </div>
l'input per il codice dell'immagine
Codice HTML:
<input type="text" value="<?php echo $codice1;?>" onblur="showGint1(this.value)" id="myInput"
name="prdPrv" class="form-control text-right" minlength="1">
Scipt jQuery
Codice PHP:
function showGint1(str) {
if (str.length == 0) {
document.getElementById("txtGint1").innerHTML = "";
return;
} else {
var xmlhttp = new XMLHttpRequest();
xmlhttp.onreadystatechange = function() {
if (this.readyState == 4 && this.status == 200) {
document.getElementById("txtGint1").innerHTML = this.responseText;
}
}
xmlhttp.open("GET", "ajax_fo1.php?q="+str, true);
xmlhttp.send();
}
}
infine lo script php di supporto
Codice PHP:
<?php
$q = $_REQUEST["q"];
$immagine="<img class='img-fluid img-thumbnail' src='$q.png' alt='$q.png'> " ;
echo $immagine;
?>
Ho provato togliere all'input il comando onblur() ed ad aggiungerlo al pulsante con onclick()
il primo problema, evidente anche a me che non conosco jquery, e che onblur() passa alla funzione
il parameto del valore dell'input (this.value) onclick dovrebbe passare lo stesso paramtero.
Ho provato pertanto a modificare la funzione così :
Codice PHP:
function showGint1()
{ var str = $("#myInput").val();
Il resto non cambia, purtroppo non funziona lo script PHP non riceve la variabile $q = $_REQUEST["q"]
e manda un avviso.
Ho provato a inserire un alert(str) subito dopo aver dichiarato la variabile e torna il giusto valore
ma poi evidentemente c'è un errore, ma non riesco a capire quale.
Se qualcuno puoi darmi un suggerimento lo apprezzerei molto.
Grazie