[PHP] Ricerca record tramite post

ONE313

Utente Attivo
10 Set 2016
37
2
8
Buona sera, ho un problema nel visualizzare il risultato di due tabelle relazonate tra loro, utilizzando anche un select box. Volevo fare una ricerca come siti subito,amazon tramite categoria o prodotto.

PHP:
?php

$Host = "localhost";
$User = "root";
$Pass = "";
$Db = "ricerca_select";

$Conn = mysqli_connect($Host, $User, $Pass, $Db);

if (isset($_POST["submit"])) {
    $citta=$_POST["citta"];

$Query = "SELECT nome,cognome,citta FROM utente,citta where utente.ks_citta=citta.id_citta
  " ;
    /*oppure citta='$Citta' in base se volgio cercarea
    attraverso l'id o la cittas*/

    $Result= mysqli_query($Conn,$Query);

while ($Row=mysqli_fetch_array($Result)) {
   
        echo $Row[0]." ".$Row[1]." ".$Row[2]."<br>";
}
}
?>

HTML:
<!DOCTYPE html>
<html>
<head>
    <title>prova</title>
</head>
<body>
<form action="#" method="POST">
    <select>
        <option name="citta">roma</option>
        <option name="citta">parigi</option>
    </select>
    <input type="text" name="citta">
<input type="submit" name="submit">
   
</form>
</body>
</html>
 
Ultima modifica di un moderatore:

macus_adi

Utente Attivo
5 Dic 2017
1.333
91
48
IT/SW
Crea un middleware per valorizzare l'input (post/get), fai che la var restituisca porzione di query...
 

Max 1

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
29 Feb 2012
4.407
339
83
@ONE313
Quando posti del codice PHP devi usare il TAG
php-png.5736
invece del TAG
code-gif.5737

Grazie
 

Rikk73

Utente Attivo
7 Apr 2015
139
6
18
Arezzo
$Query = "SELECT nome,cognome,citta FROM utente,citta where utente.ks_citta=citta.id_citta

Credo che la query così ti restituisca i soli dati delle colonne "nome,cognome,citta" della tabella utenti e nulla della tabella città,
prova a modificare la query così:

PHP:
//...
$Query = "SELECT utente.nome,utente.cognome,utente.citta, citta.* FROM utente,citta where utente.ks_citta=citta.id_citta
//...
 

ONE313

Utente Attivo
10 Set 2016
37
2
8
Max1 Ok.
Marcus_adi non so come si creano i middelware e come valorizzare l'imput get/post. Dove posso trovare riferimenti?
 

ONE313

Utente Attivo
10 Set 2016
37
2
8
Rikk73, i dati me li estrae in entrambe le tabelle bene.
tabella utenti i campi sono:
id_nome(int autoincrement), nome(varchar),cognome(varchar), citta(int..... questo campo è relazionato con id_citta).
tabella citta
id_citta(int autoincrement), citta(carchar)
Ho relazionato le tabelle tra loro e la select ok, se io pero voglio filtrare i dati attraverso un select box o input non riesco.
ho pensato di usare like nella query ma da errore
$Query = "SELECT nome,cognome,citta FROM utente,citta where utente.ks_citta=citta.id_citta like ".$Citta." " ;
 

macus_adi

Utente Attivo
5 Dic 2017
1.333
91
48
IT/SW
$Query = "SELECT nome,cognome,citta FROM utente,citta where utente.ks_citta=citta.id_citta like ".$Citta." " ;
Farei cosi:
PHP:
/**
* Metodo funzionale per effettuare il bind dei parametri
* @param array $bind Array associativo di valori
* @param string $type Stringa contentente i tipi
* @param bool $res Risultato fetchall
*
* @return $this|string
* @throws Exception
*/
private function execute_stmt($query,$bind,$type,$res=true){
   $this->stmt=$this->mysql->prepare($query);
   if($this->stmt->param_count != count($bind)){
      $this->exception='Numero di parametri non corretto per la query selezionata';
      return $this->exception;
   }
   $callArgs = array();
   foreach($bind as $index => $arg) {
      $callArgs[$index] = &$bind[$index];
   }
   try {
      array_unshift($callArgs, $type);
      call_user_func_array(array($this->stmt, 'bind_param'), $callArgs);
      $this->stmt->execute();

      if($res)$this->result=$this->stmt->get_result()->fetch_all(1);
      $this->stmt->close();
   }
   catch (Exception $e) {
      throw $e;
   }
   return $this;
}
$q = "SELECT nome,cognome,citta FROM utente,citta where utente.ks_citta=citta.id_citta like ?" ;
$tipologia='s';
$array_associativo=['citta'=>'Milano'];
$this->conn->execute_stmt($q,$array_associativo_valori,$tipologia)->result;
Questo è stato estratto solo ed esclusivamente da una mia Lib, in alternativa potresti utilizzare medoo.in
Notazione ad oggetti e non procedurale, quindi dovresti cambiare un pò di roba anche perchè i metodi che hai utilizzato sono deprecati già da un pò!
 

ONE313

Utente Attivo
10 Set 2016
37
2
8
Ok, grazie della dritta. Mi guardo il metodo ad oggetti per capirlo e poi riprovo
 
Discussioni simili
Autore Titolo Forum Risposte Data
G Colorare menu select attraverso ricerca php PHP 0
L PHP motore di ricerca nel sito PHP 1
L Ricerca sviluppatori PHP tempo indeterminato Milano Offerte e Richieste di Lavoro e/o Collaborazione 0
S [PHP] Creare collegamento filtri di ricerca al database PHP 6
L [PHP] Ricerca su search bar esterna PHP 1
Alex_70 [PHP] Ricerca con risultati cliccabili PHP 21
ANDREA20 [PHP] motore di ricerca nel sito PHP 11
T [PHP] Ricerca nel database PHP 2
C [PHP] Ricerca multipla, evitare if PHP 4
M [OFFRO][RETRIBUITO] Milano IT Consulting SRL - Ricerca 1 Consulente PHP Offerte e Richieste di Lavoro e/o Collaborazione 0
andreas88 Da .htm a .php, perdo le mie posizioni su Google ricerca? SEO e Posizionamento 9
Emix [PHP] Ricerca e modifica su due tabelle PHP 26
G [PHP] FORM DI RICERCA ESTESA PHP 2
borgo italia [PHP] ricerca caratteri accentati PHP 4
P [PHP] ricerca dati PHP 1
Emix [PHP][MYSQL] Ricerca avanzata tramite form PHP 6
T4MAR4 [PHP] Problema ricerca con apostrofo PHP 2
R [PHP] Prendere dati da moduli di ricerca esterni PHP 4
T4MAR4 [PHP] piu select in ricerca PHP 1
T4MAR4 [PHP] Inserire piu campi di ricerca PHP 2
A [PHP] Problema paginazione motore di ricerca PHP 48
TheWhiteRabbit Perfezionare ricerca in PHP - NO DATABASE - (Website X5) PHP 5
sandropochi [PHP] Form per creare filtro di ricerca su DB PHP 8
U [PHP] form per ricerca multipla: Unknown column 'undefined' in 'where clause' PHP 2
giuseppe_123 [PHP] ricerca in una tabella con my sql PHP 0
L [PHP] ricerca per un campo o per più campi PHP 5
M [PHP] Ricerca con data timestamp PHP 45
B Ricerca PHP e Prenotazione PHP PHP 2
M [PHP] Evidenziare le parole cercate nei risultati di una ricerca PHP 1
MarcoGrazia [PDO][PHP[MySQL] Piccolo modulo di ricerca in un sito tramite l'operatore LIKE Snippet PHP 0
Y [Retribuito][Offro] RICERCA PROGRAMMATORI iOS e PHP/DB Offerte e Richieste di Lavoro e/o Collaborazione 0
S Un aiuto su uno script di ricerca avanzata in php che sto verificando. PHP 1
I Motore di ricerca php PHP 2
C [Offro][Retribuito] Cloudworks srl ricerca un junior PHP developer Offerte e Richieste di Lavoro e/o Collaborazione 0
N PHP Ricerca utente, Tabella con più elementi PHP 8
M motore di ricerca complesso php PHP 2
R Barra ricerca php e mysql PHP 0
R Ricerca Email in database mysql con php PHP 2
S [RISOLTO]aiuto, non riesco afar funzionare il camp odi ricerca per un DB con PHP PHP 5
M Box di ricerca in php PHP 3
P PHP modulo ricerca e ordine alfabetico PHP 5
G Visualizzazion modulo di ricerca in PHP e MySql PHP 0
A Ricerca full text mysq ed estrazione con php PHP 8
G Php problema con risultato di ricerca PHP 2
I Facile.it Spa ricerca Senior PHP Developer forti ed ambiziosi! Offerte e Richieste di Lavoro e/o Collaborazione 0
K Problema ricerca con piu campi in php PHP 3
Sargon Php / My sql motore di ricerca PHP 21
F Ricerca avanzata PHP & MySQL PHP 4
P PHP Workgroup Livorno, RICERCA giovani programmatori! Offerte e Richieste di Lavoro e/o Collaborazione 1
W [Php - MySql] ricerca con form select diversi PHP 14

Discussioni simili