[RISOLTO]Come generare query dinamica PHP-MYSQL

andreadb91

Nuovo Utente
20 Giu 2013
19
0
1
Salve, ho provato da solo ma non riesco quindi mi affido a voi

Ho questo form

HTML:
<script lang="javascript">
jQuery(document).ready( function (){
filterResults();
});
</script><form id="trova-smartphone" name="filterForm" method="post" action="">

<button name="resetForm" id="resetForm" type="button">Reimposta ricerca</button>

<input type="hidden" name="aziendaProduttrice_mod" value="equal" id="aziendaProduttrice_mod">
<select name="aziendaProduttrice" id="aziendaProduttrice" onchange="filterResults()">
    <option value="0" label="--Seleziona--">--Seleziona--</option>
    <option value="Acer" label="Acer">Acer</option>
    <option value="Apple" label="Apple">Apple</option>
    <option value="Asus" label="Asus">Asus</option>
    <option value="HTC" label="HTC">HTC</option>
    <option value="Huawei" label="Huawei">Huawei</option>
</select>

<input type="hidden" name="gpu_mod" value="equal" id="gpu_mod">
<select name="gpu" id="gpu" onchange="filterResults()">
       <option value="0" label="--Seleziona--">--Seleziona--</option>
       <option value="Adreno 200" label="Adreno 200">Adreno 200</option>
        <option value="Adreno 203" label="Adreno 203">Adreno 203</option>
        <option value="Adreno 205" label="Adreno 205">Adreno 205</option>
        <option value="Adreno 220" label="Adreno 220">Adreno 220</option>
         <option value="Adreno 225 " label="Adreno 225 ">Adreno 225 </option>
        <option value="Adreno 320" label="Adreno 320">Adreno 320</option>
        <option value="PowerVR SGX 543MP2" label="PowerVR SGX 543MP2">PowerVR SGX 543MP2</option>
        <option value="PowerVR SGX 543MP3" label="PowerVR SGX 543MP3">PowerVR SGX 543MP3</option>
        <option value="PowerVR SGX535" label="PowerVR SGX535">PowerVR SGX535</option>
         <option value="PowerVR SGX540" label="PowerVR SGX540">PowerVR SGX540</option>
         <option value="PowerVR SGX543MP4" label="PowerVR SGX543MP4">PowerVR SGX543MP4</option>
         <option value="Tegra 2" label="Tegra 2">Tegra 2</option>
         <option value="Tegra 3" label="Tegra 3">Tegra 3</option>
</select>

<input type="hidden" name="ram_mod" value="equal" id="ram_mod">
<select name="ram" id="ram" onchange="filterResults()">
        <option value="0" label="0">0</option>
        <option value="384" label="384">384</option>
         <option value="512" label="512">512</option>
         <option value="576" label="576">576</option>
        <option value="768" label="768">768</option>
        <option value="1024" label="1024">1024</option>
        <option value="2048" label="2048">2048</option>
</select>

<input type="hidden" name="fotocamera_mod" value="equal" id="fotocamera_mod">
<select name="fotocamera" id="fotocamera" onchange="filterResults()">
         <option value="0" label="0">0</option>
         <option value="3.2" label="3.2">3.2</option>
         <option value="5" label="5">5</option>
         <option value="8" label="8">8</option>
          <option value="13" label="13">13</option>
</select>
</form>
</div>
 <br>
<div id="searchResult" style="margin-left: 3em"><b>SMARTPHONE</b></div>

Queta è la pagina dove è presente lo script filterResult()

HTML:
function load_content(name)
{
       jQuery.ajax({
            url: 'filterResult.php',
            context: document.body,
            type: 'POST',
            data: name,
            success:
               function(data)
		{
	        	jQuery("#searchResult").html(data);
		},
		complete: 
			function()
			{
	        	jQuery('#filterForm').css('height',jQuery('#searchResult').height());
	        	
			}
	});		
}

function filterResults()
{
        var fltr='';
	var choice;
	
	jQuery('select > option:selected').each(function() {
		fltr += jQuery(this).parent().attr('name') + '=' + jQuery(this).val() + '&';
	});
	jQuery('input[type=hidden]').each(function() {
		fltr += jQuery(this).attr('name') + '=' + jQuery(this).val() + '&';
        });

       fltr = fltr.substr(0,fltr.length-1);
       load_content(fltr);
}

function resetSelect(name)
{
	jQuery("select[name="+name+"] option:first-child").attr("selected","selected");
	filterResults();
}

function resetForm()
{
	jQuery('form[name=filterForm]')[0].reset();
	filterResults();
}

jQuery(document).ready( function (){	
	jQuery('body').on('click','#refresh',function (){
		filterResults();
	});
	jQuery('body').on('click','#resetForm',function (){
		resetForm();
	});
	jQuery('body').on('click','a.deleteFilter',function (){
		resetSelect(jQuery(this).attr("name"));
	});
});


Ora non riesco a recuperare tutte le select selezionate per poi metterle nella query
Questa è la pagina filterResult.php

PHP:
<?php
include("../include/connect.php");
$conn=mysql_connect($HOST, $USER, $PASSWORD);
$db_ok=mysql_select_db($DB, $conn);

$name = $_POST['name']; //non credo che vada bene

$i=0;
$ris = mysql_query("SELECT * FROM cellulare WHERE [B][U]non so cosa mettere[/U][/B] ", $conn);
while ($row = mysql_fetch_array($ris)) {
       if($i++%4 == 0)
             { echo "</tr><tr>"; }
             echo "<td class='image'> <img src=immagini/".$row["image"]."><br>";
             echo '<a title="Smartphone" href="/smartphone/public/public/cell/idSmart/'.$row['idSmart'].'">';
               $row['aziendaProduttrice'];' ';echo $row['nome'].'</td></a>';
}
echo "</tr></table>";
mysql_close($conn);
?>
 
Ultima modifica di un moderatore:

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.046
150
63
PR
www.borgo-italia.it
ciao
se non ho capito male vorresti fare la query in funzione di quello che selezioni, giusto?
per prima cosa nelle select dove hai l'opzione --Seleziona--
HTML:
<option value="0" label="--Seleziona--">--Seleziona--</option>
è meglio che tu modifichi in
HTML:
<option value="" label="--Seleziona--">--Seleziona--</option>
poi per la query
PHP:
<?php
//....
$wh= " WHERE 1=1 ";
if($_POST['aziendaProduttrice']!=""){
	$wh.="AND azienda='".$_POST['aziendaProduttrice']."' ";//non so come chiami i campi
}
if($_POST['gpu']!=""){
	$wh.="AND gpu='".$_POST['gpu']."' ";
}
if($_POST['ram']!=""){
	$wh.="AND ram='".$_POST['ram']."' ";
}
if($_POST['fotocamera']!=""){
	$wh.="AND fotocamera='".$_POST['fotocamera']."' ";
}
$query="SELECT * FROM cellulare $wh";//ti conviene tenerla divisa per verificarla
$ris = mysql_query($query);
//....
?>

poi abbandona le vecchie istruzioni mysql (tra un po' non funzioneranno più) e passa a mysqli o alla classe pdo
 
Discussioni simili
Autore Titolo Forum Risposte Data
L (risolto) MySQL 0
B getElementById su piu id(Risolto) Javascript 7
L Esercitarsi con Js [RISOLTO] Javascript 4
C [RISOLTO]Inserimento variabile php in input html PHP 20
L risolto visualizzazione e ordinamento dati PHP 1
moustache [RISOLTO] SQL PHP IIS PHP 8
Sergio Unia Ricezione email con destinatari multipli [Risolto] PHP 2
L update tabelle in php mysql [risolto] PHP 6
M Semplice visualizzatore di immagini [risolto con plugin wp] PHP 7
L [RISOLTO] Stampa a video risultato count in html PHP 13
L [RISOLTO] Eliminare una discussione creata PHP 3
tomorc [HTML] Problema con scroll bar (risolto) HTML e CSS 0
A [PHP] Problema query insert [RISOLTO] PHP 14
B [PHP] recuperare IP dei server in load balancing [RISOLTO] PHP 3
K [RISOLTO] Problema Griglia Php+Mysql PHP 13
S [RISOLTO] aggiorna tabella da select option asp classic Classic ASP 7
elpirata [RISOLTO][Javascript] Datapicker e autocompletamento campo input Javascript 2
elpirata [RISOLTO][Mysql] Problema insert valori apostrofati MySQL 1
elpirata [RISOLTO][Mysql] Contare le occorrenze in un campo tipo varchar MySQL 2
G [MS Access] Gestione biglietti [RISOLTO] MS Access 2
G [MS Access] Casella combinata & Query [RISOLTO] MS Access 4
G [MS Access] Query mese corrente con conteggio [RISOLTO] MS Access 2
M [RISOLTO]Windows media player non mi funziona più su win 10 pro 64 bit Windows e Software 2
C [RISOLTO][PHP] Errore di sintassi PHP 8
IT9-Gpp [RISOLTO] Leggere variabile restituita da success Ajax 3
Kolop [RISOLTO][PHP] Problema Pagination PHP 2
C [RISOLTO][PHP] Funzione ONclick PHP 14
C [RISOLTO][PHP] Conteggio righe di una tabella PHP 4
N [PHP] Utilizzo variabili di sessione [Risolto] PHP 13
Tommy03 [RISOLTO][PHP] Webserver o devserver? PHP 2
Sergio Unia Recupero dati da una vecchia versione MySql [Risolto] MySQL 4
spider81man [PHP] Problemi cancellazione dato su DB [RISOLTO] PHP 1
A [RISOLTO]Inserimento Immagini da pc a MySql PHP 15
A [PHP] RISOLTO Invio Mail con Tabella PHP 2
felino Risolto - [Wordpress][WooCommerce] PayPal Checkout e campi di fatturazione WordPress 2
elpirata [PHP][RISOLTO] Sommare gli importi estratti da un ciclo while PHP 3
elpirata [PHP][RISOLTO] Effettuare la somma dei tempi di lavorazione PHP 3
elpirata [PHP] [RISOLTO]Sovrascrivere testo in una tabella PHP 2
A [RISOLTO]Recuperare dati inviati con json tramite php PHP 4
C [RISOLTO][PHP] Passaggio variabili senza refresh di pagina PHP 7
elpirata [PHP][RISOLTO] Errore di tipo Notice: Undefined index - Come risolvere quando si hanno tante var PHP 10
S Problema in PHP per invio file XML - RISOLTO- PHP 8
A [Javascript] [RISOLTO] Doppio "submit", in uno stesso "Form" , che puntino ad "action" diversi Javascript 1
marino51 [Risolto]videochat di messenger ha smesso di funzionare sul telefonino Smartphone e tablet 1
A [Javascript] [HTML] RISOLTO...Allungare un box all'apertura della pagina No Mouse over Javascript 9
ken_korn [Javascript][Risolto] browser.tab.Tabs.favIconUrl non funziona Javascript 5
A [RISOLTO] HighChart e PHP PHP 4
A [RISOLTO] PHP Selezionare tutti i file con stessa estensione PHP 2
A [RISOLTO] Table elaborata da codice PHP con dati da DB non visualizzata in IFRAME PHP 15
T [Photoshop] Problema creazione pennello personalizzato [RISOLTO] Photoshop 3

Discussioni simili