Ricerca da una pagina e visualizza in un'altra

pup3770

Utente Attivo
30 Mag 2012
122
0
16
Ciao Ragazzi,
a causa del lavoro è da tanto che non programmo e non scrivo. Adesso sto tornando.

Ho un db mysql che contiene una tabella: codice, immagine, descrizione, testo, scheda

dove codice contiene un valore numerico, immagine il nome (in .jpg) di una immagine che sta sul db.

Vorrei avere due pagine web in cui: nella prima ho una cella che mi permette di scrivere un valore numerico e dando INVIO mi cerca nel db la tupla con codice uguale a quello inserito in cella e mostra il risultato in un'altra pagina (che ho già preparato e strutturato). La pagina di visualizzazione deve visualizzare per "xx" secondi e poi tornare alla prima pagina (non è un problema perché utilizzo:
PHP:
header("refresh:60;url=ricerca_e_visualizza.php");
)

Vi posto il codice della pagina che contiene la cella di inserimento:
PHP:
<?php
ob_start();
?>

<html>
<head>

<style type="text/css">
body {
    background-color: #C0C0C0;
    color: #fff;
    font-family: Verdana, sans-serif;
    font-size: 14px;
}
 
#form {
    width: 500px;
    margin: 50px auto;
    background: #222;
    padding: 25px;
    overflow: hidden;
 
    -moz-border-radius: 20px;
    -webkit-border-radius: 20px;
    border-radius: 20px;
}
 
h1 {
    font-size: 16px;
    color: #FCCC69;
    margin-bottom: 20px;
}





label, input, textarea { /* Stili comuni agli elementi del form */
    color: #dedede; /* Colore del testo */
    float: centre-left; /* Float a sinistra */
    font-family: Verdana, sans-serif; /* Tipo di carattere per il testo */
    margin: 10px 0; /* Margini */
}
label { /* Stili per la label */
    display: block; /* Impostiamo la label come elemento blocco */
    line-height: 30px; /* Altezza di riga */
    width: 150px; /* Larghezza */
}
 
input, textarea { /* Stili per il campo di testo e per la textarea */
    background: #FFA500; /* Colore di sfondo - prima era #1C1C1C */
    border: 5px solid #323232; /* Bordo */
    color: #fff; /* Colore del testo */
    height: 60px; /* Altezza */
    line-height: 60px; /* Altezza di riga */
    width: 300px; /* Larghezza */
    padding: 0 10px; /* Padding */
}
 
input { padding-left: 30px;
 
textarea { /* Stili specifici per la teaxtarea */
    background: #1C1C1C url('images/social_balloon.png') no-repeat 235px 95px; /* Sfondo con immagine */
    font-size: 12px;
    height: 200px;
    width: 320px;
    overflow: hidden; /* disabilitare la scrollbar in IE */
}
</style>


<title> Ricerca e visualizza HTML/PHP/JAVASCRIPT </title>
</head>


<P ALIGN="CENTER">
	<FONT COLOR="#FF0000" SIZE = 7> Ricerca e visulizza </FONT> <br>
	</P>


<FORM METHOD="post" ACTION="visualizza.php"> <!Metodo POST, le informazioni inviate da un form con il metodo POST sono invisibili agli altri e non ha limiti sulla quantitÃ* di informazioni da inviare>
	
<input type="text" name="foo" id="foo"/>
<script>
    document.getElementById("foo").focus();
</script>	

<INPUT TYPE="submit" VALUE="-">
</FORM>		



<body>
<?php
header("refresh:60;url=ricerca_e_visualizza.php");
?>


<br>
<hr>
<br/>


</body>
</html>

<?php
ob_end_flush();
?>

A questo punto, capisco bene che dovrei fare una SELECT con WHERE in cui confrontare il valore numerico che è stato immesso nella cella con i valori che nella colonna "codice", fatto questo, se lo trova, devo stampare la corrispondente riga.

Mi domando: ma la SELECT la devo fare nell'altra pagina e invece dalla prima pagina devo passare il valore numerico.

Potete gentilmente aiutarmi?

Grazie
 

filomeni

Moderatore
Membro dello Staff
MOD
14 Mag 2006
1.054
6
38
53
Roseto degli Abruzzi (TE)
www.sitiweb.cloud
Ciao, un pò contorto il modo di esporre la domanda!!! comunque cerco di interpretare.
Come prima cosa mi salta all'occhio che l'apertura del tag body è sbagliata devi metterla dopo la chiusura del tag head.
Stai utilizzando un tag obsoleto "font" da sostituire eventualmente con un tag <span></span> assegnandogli un id o classe e specificare con uno stile css le caratteristiche.
Se fai un "action" sulla pagina "visualizza.php" è su quest'ultima che devi recuperare il POST e fare la SELECT, in questa pagina metti il redirect a tempo che dipende come strutturata la pagina, può essere fatto in diverse maniere.
esempio
PHP:
PHP:
<?php
   ob_start();
   echo "Se il tuo browser non supporta il redirect clicka <a href=\"tuapagina.php\">qui</a>.";
   header( "refresh:5;url=tuapagina.php" );
   ob_end_flush();
?>
oppure in javascript:
Codice:
<script type="text/javascript">
function redirect() {
  location.href = "tuapagina.php";
}
window.setTimeout("redirect()", 5000);
</script>
Spero di aver capito e centrato li problema...
ciao
 
Ultima modifica:

pup3770

Utente Attivo
30 Mag 2012
122
0
16
Ciao, grazie per la risposta.
Ho capito, ma per fare il POST ok ma la pagina di inserimento è corretta?
Cioè nella pagina nuova per recuperare il post dovrei fare:
$prova = "SELECT * FROM tabella WHERE codice =".$POST[" "];
ma cosa mettere in quelle quadre? cioè credo che il mio problema sia quello del passaggio di parametri. come posso risolvere?
 

filomeni

Moderatore
Membro dello Staff
MOD
14 Mag 2006
1.054
6
38
53
Roseto degli Abruzzi (TE)
www.sitiweb.cloud
Per recuperare i dati in POST (nel tuo caso è da recuperare solo il nome del file inserito nel campo)
PHP:
$foo=$_POST['foo'];
in questa maniera recuperi quindi il valore inseito nel campo, poi fai la query:
PHP:
$sql="SELECT * FROM tabella WHERE codice ='".$foo."'";
$rs=@mysql_query($sql) or die("Errore query Database");
	while($riga=mysql_fetch_array($rs)){
	$codice = $riga['codice'];
	
echo $codice;//qui visualizzi l'immagine
}
 
Ultima modifica:

pup3770

Utente Attivo
30 Mag 2012
122
0
16
RISOLTO - Ricerca da una pagina e visualizza in un'altra

Grazie per il consiglio, effettivamente già ieri sera ci ero riuscito perché mi sono andato a studiare i Metodi $_GET e $_POST.
Per chiunque dovesse leggere questo post, se in una pagina avete ad esempio:

PHP:
<FORM METHOD="post" ACTION="visualizza.php"> <!Metodo POST, le informazioni inviate da un form con il metodo POST sono invisibili agli altri e non ha limiti sulla quantità* di informazioni da inviare>
	
<input type="text" name="foo" id="foo"/>
<script>
    document.getElementById("foo").focus();
</script>	

<INPUT TYPE="submit" VALUE="-">
</FORM>

ovvero una casella/area di testa in cui potete inserire valori, questi valori potete recuperarli in un'altra pagina mediante il metodo $_POST, come:

PHP:
$query ="SELECT * FROM tabella WHERE valore = $_POST[foo]"; //mediante $_POST[foo] recupero il valore inserito nell'area di testo della pagina di provenienza. "foo" è il contenuto di name: <input type="text" name="foo" />

Sia io che "filomeni" abbiamo utilizzato "foo" che è proprio il nome dell'input type:
Codice:
<input type="text" name="foo" id="foo"/>

Nel mio caso che dovevo:
- scrivere nella cella (pagina 1)
- cercare in una tabella
- visualizzare il contenuto quando il campo è uguale (pagina 2)

ho recuperato e fatto la SELECT così:

PHP:
....

  $query ="SELECT * FROM tabella WHERE valore = $_POST[foo]"; //mediante $_POST[foo] recupero il valore inserito nell'area di testo della pagina di provenienza. "foo" è il contenuto di name: <input type="text" name="foo" />

	$result = mysql_query($query, $connessione);

        $numrows = mysql_num_rows($result);


//Avvio un ciclo for che si ripete per il numero di occorrenze trovate
  for($x=0; $x<$numrows; $x++){
    //Recupero il contenuto di ogni record rovato
    $resrow = mysql_fetch_row($result); //mysql_fetch_row() recupera il contenuto dei record trovati. Più precisamente restituisce un array contenente i valori di ogni campo riscontrati nel recordset
    
$var1 = $resrow[0];
$var2 = $resrow[1];
    $var3 = $resrow[2];
    $var4 = $resrow[3];
    $var5 = $resrow[4];    

    
//Stampo il risultato
   
    echo $var1;
    echo $var2;
    echo $var3;
    echo $var4;
    echo $var5;

//Nota queste stampa sono solo a scopo didattico, realmente ho utilizzato il codice per alto
 
  } //fine ciclo for

...
 
Discussioni simili
Autore Titolo Forum Risposte Data
M Ricerca di un txt all'interno di una pagina html HTML e CSS 1
F motore di ricerca su una pagina PHP 0
L Mysql: Nascondere le pagine dopo una ricerca PHP 1
F Funzione Glob - ricerca file contenente una parola PHP 1
giuseppe_123 [PHP] ricerca in una tabella con my sql PHP 0
M [PHP] Evidenziare le parole cercate nei risultati di una ricerca PHP 1
gandalf1959 Estrazione di un singolo dato da una ricerca mysql PHP 1
A Ricerca interna in una applicazione Sviluppo app per Android 1
A problema con l'inserimento di valori in una tabella dopo una ricerca da form Classic ASP 1
E Ricerca su una stringa numerico PHP 8
G Come modificare una ricerca nel proprio sito con piu elenchi Classic ASP 1
T realizzare una select di ricerca con più opzioni MS Access 3
P Come creare una barra di ricerca in flash Flash 1
P Generare pagine successive dopo una ricerca Classic ASP 5
W Aggiungere un nuovo campo input per fare una ricerca in base al numero che inserisci Classic ASP 26
L Ricerca di uno script sulla gestione di una squadra Classic ASP 0
D aprire una popup per i risultati di una ricerca Javascript 2
giorgione_tg Come suddividere il result di una ricerca in più pagg.?? PHP 5
F access ricerca record con apostrofo. MS Access 0
C Ricerca Prodotti Woocommerce Javascript 0
U PHP creare un file excel dopo ricerca nel DB PHP 0
G Colorare menu select attraverso ricerca php PHP 0
L PHP motore di ricerca nel sito PHP 1
G Menù a tendina di ricerca con query PHP 1
R Problema query con ricerca id numerico PHP 2
F Visualizzazione motore di ricerca SEO e Posizionamento 2
B Stringa sql per ricerca su più campi Database 1
P Ricerca campo data PHP 1
L titolo del sito nella pagina di ricerca di google SEO e Posizionamento 2
A Creare un modulo di ricerca avanzata con dreamweaver HTML e CSS 0
L Ricerca valore mysql e incremento PHP 73
E Problema motore di ricerca FULL_TEXT PHP 0
motleyrulez Ricerca filtro con Ajax PHP 1
Shyson [CSS] Posizionare casella di ricerca HTML e CSS 3
P Query di ricerca profonda MySQL 0
T Query per ricerca ritardo evento MS Access 7
B Campo ricerca domini HTML e CSS 4
V Ricerca volontari questionario tesi - Ricambio Offerte e Richieste di Lavoro e/o Collaborazione 0
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
D Ente di Formazione accreditato in Regione Lazio ricerca Front End Developer Offerte e Richieste di Lavoro e/o Collaborazione 3
N [WordPress] Ricerca tema WordPress 6
Alex_70 [PHP] Ricerca con risultati cliccabili PHP 21
Federico.Marcelo Alla ricerca di scrittori post guest Offerte e Richieste di Lavoro e/o Collaborazione 0
ANDREA20 [PHP] motore di ricerca nel sito PHP 11
O [PHP] Ricerca record tramite post PHP 7
GraceHawk [MS Access] Findfirst per ricerca record MS Access 1
T [PHP] Ricerca nel database PHP 2
A [Javascript] Mostrare un marker se è vicino al risultato di ricerca con google maps Javascript 3

Discussioni simili