Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 25

Hybrid View

  1. #1
    Utente di HTML.it L'avatar di Max Della Pena
    Registrato dal
    Jan 2014
    residenza
    Udine
    Messaggi
    372

    PHP Numero query per combinare tutte le possibilità di 4 campi di ricerca

    Ho un form con 4 campi di immissione, quante e quali sono tutte le possibili combinazioni?
    Mi chiedo, caro Alberto, se questo antifascismo rabbioso che viene sfogato nelle piazze oggi a fascismo finito, non sia in fondo un’arma di distrazione che la classe dominante usa su studenti e lavoratori per vincolare il dissenso.

  2. #2

  3. #3
    Utente di HTML.it L'avatar di Max Della Pena
    Registrato dal
    Jan 2014
    residenza
    Udine
    Messaggi
    372
    Quote Originariamente inviata da optime Visualizza il messaggio
    fa' un esempio
    Codice PHP:
    if (($_POST['ragsoc']=="") && ($_POST['regione']=="") && ($_POST['settore']!="") && ($_POST['stato']=="") && ($_POST['descat']=="") && ($_POST['marchi']=="")) {

    $query "SELECT * FROM clienti_fornitori WHERE settore LIKE '%".$_POST['settore']."%' ORDER BY ragsoc ASC LIMIT $start,$step";

    $queryannunci "SELECT count(*) AS tot FROM clienti_fornitori WHERE settore LIKE '%".$_POST['settore']."%'";}

    if ((
    $_POST['ragsoc']=="") && ($_POST['regione']=="") && ($_POST['settore']!="") && ($_POST['stato']=="") && ($_POST['descat']!="") && ($_POST['marchi']=="")) {

    $query "SELECT * FROM clienti_fornitori WHERE settore LIKE '%".$_POST['settore']."%' AND descat LIKE '%".$_POST['descat']."%' ORDER BY ragsoc ASC LIMIT $start,$step";

    $queryannunci "SELECT count(*) AS tot FROM clienti_fornitori WHERE settore LIKE '%".$_POST['settore']."%' AND descat LIKE '%".$_POST['descat']."%'";}

    if ((
    $_POST['ragsoc']=="") && ($_POST['regione']=="") && ($_POST['settore']!="") && ($_POST['stato']=="") && ($_POST['descat']=="") && ($_POST['marchi']!="")) {

    $query "SELECT * FROM clienti_fornitori WHERE settore LIKE '%".$_POST['settore']."%' AND (marchi LIKE '%".$_POST['marchi']."%' or marchiforniti LIKE '%".$_POST['marchi']."%') ORDER BY ragsoc ASC LIMIT $start,$step";

    $queryannunci "SELECT count(*) AS tot FROM clienti_fornitori WHERE settore LIKE '%".$_POST['settore']."%' AND (marchi LIKE '%".$_POST['marchi']."%' or marchiforniti LIKE '%".$_POST['marchi']."%')";}

    if ((
    $_POST['ragsoc']=="") && ($_POST['regione']=="") && ($_POST['settore']!="") && ($_POST['stato']=="") && ($_POST['descat']!="") && ($_POST['marchi']!="")) {

    $query "SELECT * FROM clienti_fornitori WHERE settore LIKE '%".$_POST['settore']."%' AND descat LIKE '%".$_POST['descat']."%' AND (marchi LIKE '%".$_POST['marchi']."%' or marchiforniti LIKE '%".$_POST['marchi']."%') ORDER BY ragsoc ASC LIMIT $start,$step";

    $queryannunci "SELECT count(*) AS tot FROM clienti_fornitori WHERE settore LIKE '%".$_POST['settore']."%' AND descat LIKE '%".$_POST['descat']."%' AND (marchi LIKE '%".$_POST['marchi']."%' or marchiforniti LIKE '%".$_POST['marchi']."%')";}

    if ((
    $_POST['ragsoc']=="") && ($_POST['regione']=="") && ($_POST['settore']!="") && ($_POST['stato']!="") && ($_POST['descat']=="") && ($_POST['marchi']=="")) {

    $query "SELECT * FROM clienti_fornitori WHERE settore LIKE '%".$_POST['settore']."%' AND stato LIKE '%".$_POST['stato']."%' ORDER BY ragsoc ASC LIMIT $start,$step";

    $queryannunci "SELECT count(*) AS tot FROM clienti_fornitori WHERE settore LIKE '%".$_POST['settore']."%' AND stato LIKE '%".$_POST['stato']."%'";}

    if ((
    $_POST['ragsoc']=="") && ($_POST['regione']=="") && ($_POST['settore']!="") && ($_POST['stato']!="") && ($_POST['descat']=="") && ($_POST['marchi']!="")) {

    $query "SELECT * FROM clienti_fornitori WHERE settore LIKE '%".$_POST['settore']."%' AND stato LIKE '%".$_POST['stato']."%' AND (marchi LIKE '%".$_POST['marchi']."%' or marchiforniti LIKE '%".$_POST['marchi']."%') ORDER BY ragsoc ASC LIMIT $start,$step";

    $queryannunci "SELECT count(*) AS tot FROM clienti_fornitori WHERE settore LIKE '%".$_POST['settore']."%' AND stato LIKE '%".$_POST['stato']."%' AND (marchi LIKE '%".$_POST['marchi']."%' or marchiforniti LIKE '%".$_POST['marchi']."%')";}

    if ((
    $_POST['ragsoc']=="") && ($_POST['regione']=="") && ($_POST['settore']!="") && ($_POST['stato']!="") && ($_POST['descat']!="") && ($_POST['marchi']=="")) {

    $query "SELECT * FROM clienti_fornitori WHERE settore LIKE '%".$_POST['settore']."%' AND stato LIKE '%".$_POST['stato']."%' AND descat LIKE '%".$_POST['descat']."%' ORDER BY ragsoc ASC LIMIT $start,$step";

    $queryannunci "SELECT count(*) AS tot FROM clienti_fornitori WHERE settore LIKE '%".$_POST['settore']."%' AND stato LIKE '%".$_POST['stato']."%' AND descat LIKE '%".$_POST['descat']."%'";}

    if ((
    $_POST['ragsoc']=="") && ($_POST['regione']=="") && ($_POST['settore']!="") && ($_POST['stato']!="") && ($_POST['descat']!="") && ($_POST['marchi']!="")) {

    $query "SELECT * FROM clienti_fornitori WHERE settore LIKE '%".$_POST['settore']."%' AND stato LIKE '%".$_POST['stato']."%' AND descat LIKE '%".$_POST['descat']."%' AND (marchi LIKE '%".$_POST['marchi']."%' or marchiforniti LIKE '%".$_POST['marchi']."%') ORDER BY ragsoc ASC LIMIT $start,$step";

    $queryannunci "SELECT count(*) AS tot FROM clienti_fornitori WHERE settore LIKE '%".$_POST['settore']."%' AND stato LIKE '%".$_POST['stato']."%' AND descat LIKE '%".$_POST['descat']."%' AND (marchi LIKE '%".$_POST['marchi']."%' or marchiforniti LIKE '%".$_POST['marchi']."%')";}

    if ((
    $_POST['ragsoc']=="") && ($_POST['regione']=="") && ($_POST['settore']=="") && ($_POST['stato']=="") && ($_POST['descat']!="") && ($_POST['marchi']!="")) {

    $query "SELECT * FROM clienti_fornitori WHERE descat LIKE '%".$_POST['descat']."%' AND (marchi LIKE '%".$_POST['marchi']."%' or marchiforniti LIKE '%".$_POST['marchi']."%') ORDER BY ragsoc ASC LIMIT $start,$step";

    $queryannunci "SELECT count(*) AS tot FROM clienti_fornitori WHERE descat LIKE '%".$_POST['descat']."%' AND (marchi LIKE '%".$_POST['marchi']."%' or marchiforniti LIKE '%".$_POST['marchi']."%')";}

    if ((
    $_POST['ragsoc']=="") && ($_POST['regione']=="") && ($_POST['settore']=="") && ($_POST['stato']!="") && ($_POST['descat']=="") && ($_POST['marchi']!="")) {

    $query "SELECT * FROM clienti_fornitori WHERE stato LIKE '%".$_POST['stato']."%' AND (marchi LIKE '%".$_POST['marchi']."%' or marchiforniti LIKE '%".$_POST['marchi']."%') ORDER BY ragsoc ASC LIMIT $start,$step";

    $queryannunci "SELECT count(*) AS tot FROM clienti_fornitori WHERE stato LIKE '%".$_POST['stato']."%' AND (marchi LIKE '%".$_POST['marchi']."%' or marchiforniti LIKE '%".$_POST['marchi']."%')";}

    if ((
    $_POST['ragsoc']=="") && ($_POST['regione']=="") && ($_POST['settore']=="") && ($_POST['stato']!="") && ($_POST['descat']!="") && ($_POST['marchi']=="")) {

    $query "SELECT * FROM clienti_fornitori WHERE stato LIKE '%".$_POST['stato']."%' AND descat LIKE '%".$_POST['descat']."%' ORDER BY ragsoc ASC LIMIT $start,$step";

    $queryannunci "SELECT count(*) AS tot FROM clienti_fornitori WHERE stato LIKE '%".$_POST['stato']."%' AND descat LIKE '%".$_POST['descat']."%'";}

    if ((
    $_POST['ragsoc']=="") && ($_POST['regione']=="") && ($_POST['settore']=="") && ($_POST['stato']!="") && ($_POST['descat']!="") && ($_POST['marchi']!="")) {

    $query "SELECT * FROM clienti_fornitori WHERE stato LIKE '%".$_POST['stato']."%' AND descat LIKE '%".$_POST['descat']."%' AND (marchi LIKE '%".$_POST['marchi']."%' or marchiforniti LIKE '%".$_POST['marchi']."%') ORDER BY ragsoc ASC LIMIT $start,$step";

    $queryannunci "SELECT count(*) AS tot FROM clienti_fornitori WHERE stato LIKE '%".$_POST['stato']."%' AND descat LIKE '%".$_POST['descat']."%' AND (marchi LIKE '%".$_POST['marchi']."%' or marchiforniti LIKE '%".$_POST['marchi']."%')";}





    if ((
    $_POST['ragsoc']=="") && ($_POST['regione']=="") && ($_POST['settore']=="") && ($_POST['stato']!="") && ($_POST['descat']=="") && ($_POST['marchi']=="")) {

    $query "SELECT * FROM clienti_fornitori WHERE stato LIKE '%".$_POST['stato']."%' ORDER BY ragsoc ASC LIMIT $start,$step";

    $queryannunci "SELECT count(*) AS tot FROM clienti_fornitori WHERE stato LIKE '%".$_POST['stato']."%'";}


    if ((
    $_POST['ragsoc']=="") && ($_POST['regione']=="") && ($_POST['settore']=="") && ($_POST['stato']=="") && ($_POST['descat']!="") && ($_POST['marchi']=="")) {

    $query "SELECT * FROM clienti_fornitori WHERE descat LIKE '%".$_POST['descat']."%' ORDER BY ragsoc ASC LIMIT $start,$step";

    $queryannunci "SELECT count(*) AS tot FROM clienti_fornitori WHERE descat LIKE '%".$_POST['descat']."%'";}


    if ((
    $_POST['ragsoc']=="") && ($_POST['regione']=="") && ($_POST['settore']=="") && ($_POST['stato']=="") && ($_POST['descat']=="") && ($_POST['marchi']!="")) {

    $query "SELECT * FROM clienti_fornitori WHERE marchi LIKE '%".$_POST['marchi']."%' or marchiforniti LIKE '%".$_POST['marchi']."%' ORDER BY ragsoc ASC LIMIT $start,$step";

    $queryannunci "SELECT count(*) AS tot FROM clienti_fornitori WHERE marchi LIKE '%".$_POST['marchi']."%' or marchiforniti LIKE '%".$_POST['marchi']."%'";} 
    La ricerca è solo per gli ultimi 4 campi settore, stato, descat e marchi
    Mi chiedo, caro Alberto, se questo antifascismo rabbioso che viene sfogato nelle piazze oggi a fascismo finito, non sia in fondo un’arma di distrazione che la classe dominante usa su studenti e lavoratori per vincolare il dissenso.

  4. #4
    ma ti serve pe scrivere "n" query diverse in base a quale campo è riempito oppure no? spiega meglio l'esigenza, pls

  5. #5
    Utente di HTML.it L'avatar di Max Della Pena
    Registrato dal
    Jan 2014
    residenza
    Udine
    Messaggi
    372
    Si, dovrei scrivere 16 query (ho trovato che le combinazioni sono 16) in base a quale campo è riempito.
    Mi chiedo, caro Alberto, se questo antifascismo rabbioso che viene sfogato nelle piazze oggi a fascismo finito, non sia in fondo un’arma di distrazione che la classe dominante usa su studenti e lavoratori per vincolare il dissenso.

  6. #6
    Quote Originariamente inviata da Max Della Pena Visualizza il messaggio
    Si, dovrei scrivere 16 query (ho trovato che le combinazioni sono 16) in base a quale campo è riempito.
    ma non si fa così

    Query = "SELECT ...... WHERE 1=1"
    If Campo1 NON vuoto --> Query = Query + " AND Campo1=contenuto campo1 form"
    If Campo2 NON vuoto --> Query = Query + " AND Campo2=contenuto campo2 form"
    If Campo3 NON vuoto --> Query = Query + " AND Campo3=contenuto campo3 form"
    If Campo4 NON vuoto --> Query = Query + " AND Campo4=contenuto campo4 form"


  7. #7
    Utente di HTML.it L'avatar di Max Della Pena
    Registrato dal
    Jan 2014
    residenza
    Udine
    Messaggi
    372
    Non mi è chiaro.

    Così sembra che faccio le 4 query relative a quando i 4 campi non sono vuoti, ma le combinazioni sono 16
    Mi chiedo, caro Alberto, se questo antifascismo rabbioso che viene sfogato nelle piazze oggi a fascismo finito, non sia in fondo un’arma di distrazione che la classe dominante usa su studenti e lavoratori per vincolare il dissenso.

  8. #8
    Quote Originariamente inviata da Max Della Pena Visualizza il messaggio
    Non mi è chiaro.

    Così sembra che faccio le 4 query relative a quando i 4 campi non sono vuoti, ma le combinazioni sono 16
    in questo caso aggiungi la selezione SOLO se piena; che poi è la stessa cosa delle tue combinazioni, solo mooolto più semplice

  9. #9
    Fai un esempio pratico del problema che stai affrontando. Con dati, input di ricerca e output desiderato.

  10. #10
    se hai pieni i campi 1 e 3 la query sarà

    SELECT ... WHERE 1=1 AND campo1=campoform1 AND campo3=campoform3

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.