Salve ragazzi. Sulla base dello script in ajax e php presente su questo link https://www.mrw.it/ajax/articoli/creare-shoutbox-ajax-php_818.html , ho realizzato una form per inserire e visualizzare dati di utenti. in più sto cercando di passare tramite post al file mostra.php una variabile che mi serve per effettuare una query. Il problema è che quando cerco di recuperare il valore della inpubox nascosta da passare, lo script non funziona più. Ora posto il codice
mostra.php
ajax_script.php
In pratica. cancello dal codice la stringa
e inserisco un valore manuale
tutto lo script funziona. Se tento di recuperare il valore, lo script si blocca. dove sbaglio?
Vi ringrazio in anticipo.
mostra.php
Codice:
<?php
@include 'config.inc.php';
$para=addslashes($_POST['para']);
$query = "SELECT * FROM jos_al_inquilino ORDER BY id_inquilino DESC";
$result = @mysql_query($query) or die (mysql_error());
if (mysql_num_rows($result) > 0)
{
while($row = mysql_fetch_array($result))
{
$nome = stripslashes($row['nome']);
$cognome = stripslashes($row['cognome']);
$tel1 = stripslashes($row['tel1']);
$tel2 = stripslashes($row['tel2']);
$tel3 = stripslashes($row['tel3']);
$fax = stripslashes($row['fax']);
$email = stripslashes($row['email']);
$note = stripslashes($row['note']);
echo $para."$nome - $cognome - $tel1 - $tel2 - $tel3 - $fax - $email - $note<br>\r";
}
}
@mysql_close();
?>
ajax_script.php
Codice:
// 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;
}
function salva(){
htmlRequest = ajax();
if (htmlRequest==null){
alert ("Il browser non supporta richieste HTTP");
return;
}
// controlliamo i parametri obbligatori
if(document.form_invio.nome.value == "" || document.form_invio.nome.value == "NULL" || document.form_invio.cognome.value == "" || document.form_invio.cognome.value == "NULL")
{
alert('Inserisci sia il Nick che il testo');
return;
}
// inviamo i parametri al file per l'INSERT nel database
htmlRequest.open('POST', 'http://localhost/components/com_al/class/ajax_inquilino/invia.php');
htmlRequest.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
parametri = 'nome='+document.form_invio.nome.value ;
parametri +='&cognome='+document.form_invio.cognome.value ;
parametri +='&tel1='+document.form_invio.tel1.value ;
parametri +='&tel2='+document.form_invio.tel2.value ;
parametri +='&tel3='+document.form_invio.tel3.value ;
parametri +='&fax='+document.form_invio.fax.value ;
parametri +='¬e='+document.form_invio.note.value ;
parametri +='&email='+document.form_invio.email.value ;
htmlRequest.send(parametri);
// svuotiamo il modulo per il messaggio
document.form_invio.nome.focus();
document.form_invio.nome.value = '';
document.form_invio.tel1.value = '';
document.form_invio.cognome.value = '';
document.form_invio.tel2.value = '';
document.form_invio.tel3.value = '';
document.form_invio.fax.value = '';
document.form_invio.email.value = '';
document.form_invio.note.value = '';
}
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){
// Restituice il corpo della risposta come stringa
if (document.getElementById('modulo') != null)
{
document.getElementById("modulo").innerHTML = htmlRequest.responseText;
}
}
}
// chiamata della pagina PHP che estrae i records
htmlRequest.open('POST', 'http://localhost/components/com_al/class/ajax_inquilino/mostra.php');
htmlRequest.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
[COLOR="Red"][U]param = document.form_invio.nome.value;[/U][/COLOR]
//alert(document.getElementById("nome").innerHTML);
//param = getElementsByid('nome').getAttribute('value');
para = 'para='+param ;
htmlRequest.send(para);
}
// chiamata alla funzione
mostra();
// intevallo per l'aggiornamento della pagina
setInterval("mostra()",1000);
In pratica. cancello dal codice la stringa
Codice:
param = document.form_invio.nome.value;
Codice:
param = 'prova';
Vi ringrazio in anticipo.