Pagina 2 di 3 primaprima 1 2 3 ultimoultimo
Visualizzazione dei risultati da 11 a 20 su 25
  1. #11
    Utente di HTML.it L'avatar di Max Della Pena
    Registrato dal
    Jan 2014
    residenza
    Udine
    Messaggi
    370
    Quote Originariamente inviata da optime Visualizza il messaggio
    se hai pieni i campi 1 e 3 la query sarà

    SELECT ... WHERE 1=1 AND campo1=campoform1 AND campo3=campoform3
    Si credo di aver capito, sembra più semplice la scrittura.

    Stasera mi si metto.

    Grazie.
    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. #12

  3. #13
    Utente di HTML.it L'avatar di Max Della Pena
    Registrato dal
    Jan 2014
    residenza
    Udine
    Messaggi
    370
    Quote Originariamente inviata da optime Visualizza il messaggio
    poi facce sape'

    E niente...... mi son fatto le 16 query con tutte le varianti compresi i campi vuoti.
    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. #14
    Quote Originariamente inviata da Max Della Pena Visualizza il messaggio
    E niente...... mi son fatto le 16 query con tutte le varianti compresi i campi vuoti.
    mai fatto con le combinazioni, ma sempre con quel "trucco"! posta il codice che vediamo come aiutarti

  5. #15
    Utente di HTML.it L'avatar di Max Della Pena
    Registrato dal
    Jan 2014
    residenza
    Udine
    Messaggi
    370
    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.

  6. #16
    Utente di HTML.it L'avatar di Max Della Pena
    Registrato dal
    Jan 2014
    residenza
    Udine
    Messaggi
    370
    Quote Originariamente inviata da optime Visualizza il messaggio
    mai fatto con le combinazioni, ma sempre con quel "trucco"! posta il codice che vediamo come aiutarti
    Ho postato il codice.

    Dovrei ampliare da 4 a 5 i campi di ricerca, potresti postarmi un esempio su come fare con il tuo metodo?

    Grazie.
    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.

  7. #17
    vedo:
    - 2 query e non una sola
    - un po' di ricerche in AND e un po' in OR

    ma soprattutto vedo che tutte le selezioni sono in LIKE... quindi 'sto pippozzo di ragionamento non serve a niente metti sempre tutti i filtri e amen (... LIKE campo='%%'... vuol dire prendi tutto )

  8. #18
    Utente di HTML.it
    Registrato dal
    Oct 2011
    Messaggi
    189
    Concordo con optime poiché la sintassi varia a seconda della priorità di almeno due parametri.
    Tutte le possibili combinazioni di 4 parametri sono 16 (1-2-3-4 e anche 2-1-3-4 ad esempio) ma poiché con variabile esterna devi filtrare e validare l'input ricevuto tramite POST.

    Quindi saranno presenti tutti e 4 campi dal tuo modulo HTML e con valore stringa o stringa vuota, significa
    Codice PHP:
    //esempio sei parametri, in questo caso dati tramite POST
    if(isset($_POST,$_POST['ragsoc'], $_POST['regione'], $_POST['settore'], $_POST['stato'], $_POST['descat'], $_POST['marchi'])) {
    echo 
    'il mio programma funziona unicamente per questo';
    //qui controllo se if(is_string(parametro)), ripetuto per tutti e sei.
    } else {
    echo 
    'fuori dal controllo del mio programma';

    Presta inoltre attenzione alla priorità, cioè oltre a cosa è valido anche se solo due parametri formano il risultato atteso e non più di due altrimenti anch'esso è fuori controllo dal programma. Inoltre si utilizza if e elseif (invece di svariati if), poiché è l'unica query finale ma non più query. Altrimenti aspettati che prima o poi mettano down il tuo server sfruttando le lacune del tuo programma

  9. #19
    Max, se tutti i parametri fossero riempiti, come sarebbe la query?
    Ultima modifica di optime; 25-05-2022 a 14:45

  10. #20
    Utente di HTML.it L'avatar di Max Della Pena
    Registrato dal
    Jan 2014
    residenza
    Udine
    Messaggi
    370
    Quote Originariamente inviata da optime Visualizza il messaggio
    Max, se tutti i parametri fossero riempiti, come sarebbe la query?
    Codice PHP:
     if (($_POST['ragsoc']=="") && ($_POST['regione']!="") && ($_POST['settore']!="") && ($_POST['stato']!="") && ($_POST['descat']!="") && ($_POST['marchi']!="")) {

    $query "SELECT * FROM clienti_fornitori WHERE regione LIKE '%".$_POST[regione]."%' AND settore LIKE '%".$_POST['settore']."%' AND stato LIKE '%".$_POST['stato']."%' AND (descat LIKE '%".$_POST['descat']."%' OR descce 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 regione LIKE '%".$_POST[regione]."%' AND settore LIKE '%".$_POST['settore']."%' AND stato LIKE '%".$_POST['stato']."%' AND (descat LIKE '%".$_POST['descat']."%' OR descce LIKE '%".$_POST['descat']."%') AND (marchi LIKE '%".$_POST['marchi']."%' or marchiforniti LIKE '%".$_POST['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.

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 © 2024 vBulletin Solutions, Inc. All rights reserved.