Visualizzazione dei risultati da 1 a 9 su 9
  1. #1

    Passare variabili a PHP evitando "submit"

    Buongiorno a tutti,

    Volevo sapere se c'era un modo per poter inviare dei campi presenti in un form a delle varibiali PHP senza dover utilizzare il comando "submit".

    Vorrei che dopo la scelta di una "data", mi venga eseguita una query, e successivamente il campo sottostante quello della "data" voglio che contenga i risultati della mia query.

    E' possibile fare tutto cio?
    Come potrei fare altrimenti?
    Vi prego aiutatemi sto sclerando!

  2. #2
    credo tu lo possa fare con ajax...

  3. #3
    Originariamente inviato da Toxik
    credo tu lo possa fare con ajax...
    Qualche soluzione alternativa utilizzando javascript e php non esiste?

  4. #4
    Utente di HTML.it L'avatar di dany0
    Registrato dal
    Feb 2003
    Messaggi
    422
    se ho capito bene....

    <form method='post' action='index.php' name='calend' >
    <table border='0' class='calendario' summary='tabella'>
    <tr>
    <td colspan='7'>

    <select size='1' class='inform' name='mesecal' onchange='document.calend.submit()'>
    <option value='1'>Gen</option>
    <option value='2'>Feb</option>
    <option value='3'>Mar</option>
    <option value='4'>Apr</option>
    <option value='5'>Mag</option>
    <option value='6' selected>Giu</option>
    <option value='7'>Lug</option>
    <option value='8'>Ago</option>
    <option value='9'>Set</option>
    <option value='10'>Ott</option>
    <option value='11'>Nov</option>
    <option value='12'>Dic</option>
    </select>
    ...................

    alla selezione del mese dalla form è come se tu lo selezionassi e premessi submit

  5. #5
    anche come ha detto dany è giusto

  6. #6
    Originariamente inviato da dany0
    se ho capito bene....

    <form method='post' action='index.php' name='calend' >
    <table border='0' class='calendario' summary='tabella'>
    <tr>
    <td colspan='7'>

    <select size='1' class='inform' name='mesecal' onchange='document.calend.submit()'>
    <option value='1'>Gen</option>
    <option value='2'>Feb</option>
    <option value='3'>Mar</option>
    <option value='4'>Apr</option>
    <option value='5'>Mag</option>
    <option value='6' selected>Giu</option>
    <option value='7'>Lug</option>
    <option value='8'>Ago</option>
    <option value='9'>Set</option>
    <option value='10'>Ott</option>
    <option value='11'>Nov</option>
    <option value='12'>Dic</option>
    </select>
    ...................

    alla selezione del mese dalla form è come se tu lo selezionassi e premessi submit

    Ma dopo che viene richiamata la submit() sul nome del form come faccio poi a passare i dati selezionati, a variabili php che mi eseguano una query, per poi ottenere nello stesso form successivamente un'altro campo con i risultati ottenuti?

  7. #7
    Utente di HTML.it L'avatar di dany0
    Registrato dal
    Feb 2003
    Messaggi
    422
    $mesecal=$_POST[mesecal];

    if(isset($mesecal)){

    //fai query con $mesecal
    //.......
    //......
    //poi ti scorri l'elenco e metti selezionato nella select quello che ti sei passato
    <select size='1' class='inform' name='mesecal' onchange='document.calend.submit()'>
    <option value='0' <?php if($mesecal==0){echo" selected";} ?> >Gen</option>
    ecc. ecc..
    }

    else
    {
    //carichi la form senza i vari if di selected e la tua query
    }

  8. #8
    Posto il file di prova che sto cercando di testare.
    codice:
    <html>
    	<?php 
    		require("connessioneDB.php");	
    	?>
    
    	<head>
    		<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    		<title>Prova</title>
    			<script language="JavaScript">
          	 		document.write('<script language="JavaScript" src="datax.js"></sc' + 'ript>');
           		</script>
    	</head>
    	
    	<body>
    	
    	<script language="JavaScript">
    	var source;
    	var tipo;
    	var campi = new Array();
    
    	function cal(val, e, t) {
    		var dt = new Array();
    		xPos = (document.layers) ? e.pageX : ((document.all) ? event.x : e.clientX);
    		yPos = (document.layers) ? e.pageY : ((document.all) ? event.y : e.clientY);
    
    		tipo = t;
    		source = val;
    		if (t == 0) {
    			dt[0] = val[0].value;
    			dt[1] = val[1].value;
    			dt[2] = val[2].value;
    		}
    		else
    			dt = val.value.split('-');
    
    		showCalendar(new Date(dt[2], dt[1] - 1, dt[0]), xPos, yPos);
    	}
    	</script>
    	
    	<?php
    	 if(isset($_POST['giorno1']) && isset($_POST['mese1']) && isset($_POST['anno1'])){
    	  	 $g = 	$_POST['giorno1'];
    	     $m = 	$_POST['mese1'];
    	  	 $a =	$_POST['anno1'];
    	  	 $d = 	"$a-$m-$g";
    	  	 
    	  	 $volo = "SELECT codice_Volo,frequenza
    				 FROM voli
    				 WHERE 
    				 (SUBSTRING(frequenza,IF(DAYOFWEEK('$d')= 1, 7,(DAYOFWEEK('$d')-1)),1) != \"-\")
    				 GROUP BY codice_Volo";
    		 $risultati_volo = mysql_query($volo);
    		 $num_righe  = mysql_num_rows($risultati_volo);
    		
    	  	 
    	 }
    	?>
    	
    	<form method="POST" name="form" action="<?php echo $_SERVER['PHP_SELF'] ?>">
    	<table>
    		<tr>
    		<td>Prova </td>
    			<td> 
    	<?php
    		$dateNow = date('d-m-Y');
    		list($day, $month, $year) = explode("-",$dateNow);
    	?>
    		<input type="text"   name="giorno1" size="2" maxlength="2" value="<?php echo "$day" ?>"   readonly onchange="document.form.submit()">
            <input type="text"   name="mese1"   size="2" maxlength="2" value="<?php echo "$month" ?>" readonly onchange="document.form.submit()">
            <input type="text"   name="anno1"   size="4" maxlength="4" value="<?php echo "$year" ?>"  readonly onchange="document.form.submit()">
            <input type="button" name="go2"     value="Calendario"     onclick="cal(new Array(giorno1, mese1, anno1),event,0)">
            <input type="submit" name="ok"  value="ok">
    			</td>
            </tr>
            
            <tr>
            	<td>Voli</td>
            	 <td>
            	 	<select name="volo">
            	 	  <?php if(isset($_POST['giorno1']) && isset($_POST['mese1']) && isset($_POST['anno1'])){?>
            	 		<?php while($ar = mysql_fetch_array($risultati_volo)) {?>
            	 			<option value="<?php echo $ar['codice_Volo']; ?>"><?php echo $ar['codice_Volo']; ?></option>	
            	 		<?php }
            	 	  		}else{
            	 	 	 	echo "<option>######</option>";
            	 	 	 }
            	 		?>
            	 	</select>
            	 </td>
            </tr>
        </table>
    	</form>
            
            
    	</body>
            				
    	
    		
    	<?php mysql_close(); ?>
    </html>
    Non funziona pero quello che ho fatto perche' non capisco mi esegue subito la query anche se ho fatto dei controlli su l'esistenza del $_POST...

  9. #9
    Utente di HTML.it L'avatar di dany0
    Registrato dal
    Feb 2003
    Messaggi
    422
    mm strano...prova a fare un eco delle variabili e a vedere che valore ti restituisce...

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.