Richiamare pagine PHP da variabile

minatore

Utente Attivo
25 Set 2007
410
0
0
Sera a tutti,
penso di aver azzeccato il titolo

nel db ho una tabella, dove ho scritto
alcune cose es. home,pagina1,pagina2 ecc

visto che sto studiando ho cercato di creare tipo un menu dinamico
quindi ho prelevato i dati e li ho stampati a video
però poi mi sono accorto che per richiamare le pagine di cui sopra
avevo un solo href
quindi ho pensato di richiamarle tramite variabile
la verità!
ci sto perdendo la testa, ma non ne esco
potete darmi almeno uno spunto per partire?

ciao e grazie
 

minatore

Utente Attivo
25 Set 2007
410
0
0
sarebbe bene che indicassi come è organizzata la tabella:)

la tabella, è composta
Codice:
nome tabella=categorie
id_categ | descrizione |
questi sono i 2 campi che compongino la tabella

per stamparli ho fatto
PHP:
<?php
     		//richiamo il file di configurazione
			require 'Config.php';
			//richiamo il file di connessione
			require 'Connect.php';
			
			//creo la SELECT
			$query="SELECT * FROM Categorie";
			//eseguo la query
			$risultato=mysql_query($query)or die("errore nella query;".mysql_error());

//chiudo la connessione
			mysql_close();	

$num_ris = mysql_num_rows($risultato);
for($x=0; $x<$num_ris; $x++)
		{
			print"
				<tr>";
				print"
					<td><p class='b01'>
						<img src='images/e02.gif' width='6' height='5' border='0' align='absmiddle'>&nbsp;&nbsp;
						<a href=''>".mysql_result($risultato,$x,'descrizione')."</a></p>
						<div align='center'><img src='images/hr01.gif' width='137' height='3' border='0'></div>
					</td>";
			print"
				</tr>";
		}
?>

con questo passaggio ottengo dei dei link cioè quello che ho in tabella nel campo descrizione e sono | pippo | topolino | pluto |
adesso vorrei (almeno spero) che quando clicco su di un link
mi si aprissero le pagine quali
pippo.php
topolino.php
pluto.php
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.042
149
63
PR
www.borgo-italia.it
io, ma non sono espertissimo (a prescindere dai nomi di variabile che indico), farei così e, se non ho capito male, descrizione contiene nome_pagina.php (o htm..), ma non il titolo(nome) della pagina

nome tabella=categorie
id_categ | descrizione | nome| (dove nome es. contatti)


PHP:
<?php

$item="SELECT * FROM categorie";
$query=msql_query($item);
$vai_a_pag=array();
$con_nome=array();
$conta=0;
//echo "<table>";
…….
while($riga=mysql_fetch_array($query)){
//echo vari <tr> e <td> necessari
echo “<a href=\"".$vai_a_pag[$conta]."\">". $con_nome[$conta]."</a>";
//echo vari <\tr> e <\td> necessari
$conta++;

}//fine while

mysql_close();
……..

?>

Dovrebbe venirti (a parte la grafica da sistemare con i css) una roba del genere

HOME
SECONDA
…..
CONTATTI
……




:byebye:
 
Ultima modifica:

hellslord

Utente Attivo
28 Nov 2006
99
3
0
Venezia
www.squall.it
Beh se ho capito bene il problema modificherei la parte del codice dopo la mysql_close() così

PHP:
while ($dati = mysql_fetch_object($risultato))
{
  echo "<tr>";
  echo "<td><p class='b01'> 
          <img src='images/e02.gif' width='6' height='5' border='0' align='absmiddle'>&nbsp;&nbsp; 
          <a href=\"$dati->descrizione".".php"."\">$dati->descrizione</a></p>
          <div align='center'><img src='images/hr01.gif' width='137' height='3' border='0'></div> 
          </td>";
  echo "</tr>";
}

Salvo errori sulle virgolette dell'href il codice non fa altro che creare un link che punta al nome della categoria (o meglio alla sua descrizione) e concatenare un .php in modo da riferirsi poi quando lo si clicca ad una pagina php.
 
Ultima modifica:

minatore

Utente Attivo
25 Set 2007
410
0
0
ciao a tutti, beh niente da fare
vi prego di aiutarmi
non vorrei mollare su sto fatto
altrimenti devo creare un menu statico
in modo da avere tanti href
ognuno per pagina, ma questo mi darebbe una delusione
in quanto sto facendo x adesso un percorso
didattico

ciao e grazie
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.042
149
63
PR
www.borgo-italia.it
scusa io ho fatto un errore di DIMENTICANZA:dormo:

appena sotto il while
devi inserire

$vai_a_pag[$conta]=$riga['descrizione'];
$con_nome[$conta]=$riga['nome'];

inoltre sono apparsi dei caratteri tipo & # che io non avevo scritto:confused:

scusa
 

Eliox

Utente Attivo
25 Feb 2005
4.390
3
0
PHP:
echo "<td><p class='b01'> 
          <img src='images/e02.gif' width='6' height='5' border='0' align='absmiddle'>&nbsp;&nbsp; 
          <a href=\"" . $dati->descrizione . ".php\">" . $dati->descrizione . "</a></p>
          <div align='center'><img src='images/hr01.gif' width='137' height='3' border='0'></div> 
          </td>";
Una piccola sistemata alle concatenazioni :)
 

minatore

Utente Attivo
25 Set 2007
410
0
0
PHP:
echo "<td><p class='b01'> 
          <img src='images/e02.gif' width='6' height='5' border='0' align='absmiddle'>&nbsp;&nbsp; 
          <a href=\"" . $dati->descrizione . ".php\">" . $dati->descrizione . "</a></p>
          <div align='center'><img src='images/hr01.gif' width='137' height='3' border='0'></div> 
          </td>";
Una piccola sistemata alle concatenazioni :)

ciao, quando si verifica una cosa del genere
Codice:
Notice: Undefined property: descrizione in c:\programmi\easyphp1-8\www\web_site\index.php on line 104
cosa vuol dire che sopra la pagina
devo scrivere
PHP:
$descrizione=isser($_GET['descrizione']);

grazie
 

hellslord

Utente Attivo
28 Nov 2006
99
3
0
Venezia
www.squall.it
PHP:
echo "<td><p class='b01'> 
          <img src='images/e02.gif' width='6' height='5' border='0' align='absmiddle'>&nbsp;&nbsp; 
          <a href=\"" . $dati->descrizione . ".php\">" . $dati->descrizione . "</a></p>
          <div align='center'><img src='images/hr01.gif' width='137' height='3' border='0'></div> 
          </td>";
Una piccola sistemata alle concatenazioni :)

Già hai ragionissima... L'ho scritto un po' in fretta senza controllarlo meglio!! Grazie! :)
 

hellslord

Utente Attivo
28 Nov 2006
99
3
0
Venezia
www.squall.it
Se ti dice "undefined propriety" vuol dire che la proprietà richiesta (in questo caso descrizione) non esiste nell'oggetto sulla quale è richiesta.

Forse è il caso di spiegare un attimo... :)

La funzione mysql_fetch_object restituisce un oggetto (spero tu abbia un minimo di conoscenza della programmazione ad oggetti) che ha un numero di proprietà pari al numero di colonne della tabella sulla quale esegui la SELECT sql... (ad essere più precisi e rigorosi ha un numero pari di proprietà ai campi menzionati nella select). Queste proprietà contengono il valore dei vari campi e sono raggiungibili attraverso il loro nome o il nome dichiarato nella select. Usandola come guardia del while ci si assicura che si iterano tutti i record di una certa tabella...

Ipotizzando di avere una tabella di questo tipo:

| id | nome | cognome | indirizzo |

e di fare come query

Codice:
SELECT * FROM tabella

e fare
PHP:
 $dati = mysql_fetch_object($query);

(dove $query è stata inizializzata con il risultato di una mysql_query)

otterrai una variabile $dati con 4 proprietà raggiungibili così:

PHP:
$dati->id
$dati->nome
$dati->cognome
$dati->indirizzo

Se la query fosse "SELECT cognome,indirizzo AS residenza FROM tabella", avresti su dati

PHP:
$dati->cognome
$dati->residenza

Dunque se c'è una undefined vuol dire che "descrizione" che ho scritto io non esiste nella tabella. Devi sostituirlo col nome del campo corretto :)

Spero di essere stato chiaro ;)
 

mano

Nuovo Utente
3 Lug 2008
23
0
0
cmq, potresti fare che nel menu, si visualizza una riga per ogni riga della tabella con un link ad una pagina dinamica che può essere per esempio: vedinodo.php

il link includerà una variabile che sarà proprio l'id del nodo (cioè della pagina che vuoi visualizzare):

PHP:
echo "<a href=\"vedinodo.php?nodo_id=".$row['id']."\">".$row['nome']."</a>";

la pagina vedinodo.php in base al $_GET['nodo_id'] ricercherà nel DB il nodo corretto e ne stamperà a schermo i contenuti...

era questo il problema o sono completamente fuori strada? :D
 

minatore

Utente Attivo
25 Set 2007
410
0
0
era questo il problema o sono completamente fuori strada? :D

ci sei dentro tutto, il problema era proprio quello
io creo il menu, ricavandomi ciò che ho in tabella
il fatto era che mi trovavo un solo href e quindi non sapevo come fare

grazie
 
Discussioni simili
Autore Titolo Forum Risposte Data
A Richiamare pagine.php in modo dinamico PHP 51
Shyson Richiamare funzione in altre pagine PHP 14
G Richiamare pagine ASP da HTML HTML e CSS 3
M Richiamare una singola funziona da file php PHP 2
M Richiamare funziona da file esterno jQuery 0
psicomia Gestione funzione in javascript in tabella richiamare"textarea" valori preimpostati in "select" Javascript 2
V [Visual Basic] Richiamare funzione su modulo per restituire list Visual Basic 0
T [Javascript] Richiamare un file.js (iframe) in html Javascript 1
A Richiamare funzioni esterne JS da PHP PHP 9
C richiamare una funzione in un altro script php PHP 1
A [Flash] richiamare JS da AS3 Flash 0
G [PHP] RICHIAMARE TABELLA I CUI VALORI SONO STAMPATI A VIDEO E MODIFICARLI PHP 6
Shyson [WordPress] Richiamare nel mio sito numero iscritti da gruppo Facebook WordPress 0
S [PHP] Aiuto! Non riesco a richiamare una variabile PHP 2
A [Javascript] richiamare lo pseudo elemento after Javascript 1
B [Javascript] Richiamare un attributo DATA Javascript 0
gandalf1959 richiamare una funzione da un'altra funzione PHP 1
gandalf1959 richiamare una funzione: funziona solo la seconda volta... PHP 7
E Richiamare funzione Jquery dopo aggiornamento parziale di pagina tramite ajax jQuery 0
Z richiamare codice html in file php PHP 2
T Richiamare il click su un input type="image" alla pressione del tasto invio su una text area. PHP 0
B richiamare variabile javascript su pagina php Javascript 4
elpirata Richiamare un campo input in una form Javascript 2
M [Datetimepicker]Richiamare funzione per più id uguali jQuery 4
G Richiamare funzioni esterne PHP 0
K richiamare 2 volte stessa funzione Javascript 1
Shyson Richiamare funzione esterna jQuery 4
P 2 hosting da richiamare con dominio e sottodominio Hosting 0
scatenato richiamare id PHP 28
P Problema per richiamare una variabile... PHP 3
gandalf1959 Richiamare un javascript da php. Non funziona? PHP 2
I richiamare dati da menu a tendina mysql PHP 2
L problema nel richiamare gli id HTML e CSS 2
P come richiamare una variabile PHP 3
A richiamare funzione javascript dopo login in popup. Javascript 0
I richiamare dati da database in due variabili differenti PHP 2
L Non riesco a far funzionare un plugin (probabilmente ho sbagliato qualcosa nel richiamare lo script) jQuery 10
G Richiamare una classe Sviluppo app per iOS 0
I Richiamare funzione jquery all'invio del form php Javascript 6
M Richiamare una foto dal database PHP 3
M Richiamare una data inserita nel database tramite php. PHP 4
P creare e richiamare una stored procedure in sqlserver .NET Framework 1
R [Vb.net] richiamare funzione javascirpt .NET Framework 0
I richiamare id PHP 15
Shyson richiamare contatore PHP 5
Shyson Richiamare pagina personalizzata PHP 10
G Richiamare URL in Background (Nascosto) come se fosse eseguito da browser PHP 3
B Richiamare un array in una classe PHP 7
P Richiamare id e class HTML e CSS 3
Shyson Richiamare 2 getElementById uguali Javascript 0

Discussioni simili