Problema con empty() e ||...

matteostringher

Nuovo Utente
12 Ago 2008
2
0
0
Il mio scopo è quello di verificare se sono presenti 3 variabli $_GET nell'url. Se ne è presente anche una sola, la pagina deve visualizzare altra roba. Passando al codice:
PHP:
if(empty($_GET['anno']) || empty($_GET['mese']) || empty($_GET['id']))
Se l'url è fatto così la pagina dovrebbe visualizzare altra roba:
foto.php?anno=2008&mese=08
anche:
foto.php?id=5

Invece la riga di codice con l'if funziona solo se tutte e tre le variabili sono presenti come mai?

In pratica se non c'è niente nell'url viene visualizzata una home page invece se sono presenti dei dati ad es. anno e mese ci sarà una catalogazione invece se ci sarà id verrà visualizzata una pagina con varie foto.

Ecco tutto il codice:
PHP:
<?php
	//INCLUDE
include('../include/dati_collegamento_database.inc.php');

$link = mysql_connect($host_connect, $utente_connect, $password_connect);   
if (!$link)   
{   
   printf("Connessione non riuscita: %sn", mysql_connect_error());   
   exit();   
} 
else
{  
		//SELEZIONO IL DATABASE
	mysql_select_db($db1);
	
	if(empty($_GET['anno']) || empty($_GET['mese']) || empty($_GET['id']))
	{
		$sql = "SELECT * FROM foto ORDER BY data DESC, ora DESC LIMIT 0,10 ;";
		$result = mysql_query($sql, $link)
		 or die(mysql_error());
		$numero_eventi = mysql_num_rows($result);
		if($numero_eventi != 0)
		{
?>
<h3> Ultimi 10 eventi con foto</h3>
<br />
<table class="fotoTable">
	<thead>
		<tr>
			<th>Data</th>
			<th>Nome evento</th>
			<th>Numero foto</th>
		</tr>
	</thead>
	
	<tbody>
<?php
			while($row = mysql_fetch_row($result))
			{
				echo ("<tr>\n<td>\n".date("d-m-Y", strtotime($row[1]))."</td>\n<td>\n".$row[3]."</td>\n<td>\n".$row[4]."</td>\n</tr>");
			}
?>
	</tbody>
</table>
<?php
		echo("Numero eventi con foto: <strong>".$numero_eventi."</strong>");
		}
	}
}

?>

Se può servire questo lavoro viene fatto con l'aiuto di mySql...
Vi prego aiutooooo.

Spero di avervi dato l'idea...
 
Il mio scopo è quello di verificare se sono presenti 3 variabli $_GET nell'url. Se ne è presente anche una sola, la pagina deve visualizzare altra roba. Passando al codice:
PHP:
if(empty($_GET['anno']) || empty($_GET['mese']) || empty($_GET['id']))
Se l'url è fatto così la pagina dovrebbe visualizzare altra roba:
foto.php?anno=2008&mese=08
anche:
foto.php?id=5

Invece la riga di codice con l'if funziona solo se tutte e tre le variabili sono presenti come mai?

In pratica se non c'è niente nell'url viene visualizzata una home page invece se sono presenti dei dati ad es. anno e mese ci sarà una catalogazione invece se ci sarà id verrà visualizzata una pagina con varie foto.

Ecco tutto il codice:
PHP:
<?php
	//INCLUDE
include('../include/dati_collegamento_database.inc.php');

$link = mysql_connect($host_connect, $utente_connect, $password_connect);   
if (!$link)   
{   
   printf("Connessione non riuscita: %sn", mysql_connect_error());   
   exit();   
} 
else
{  
		//SELEZIONO IL DATABASE
	mysql_select_db($db1);
	
	if(empty($_GET['anno']) || empty($_GET['mese']) || empty($_GET['id']))
	{
		$sql = "SELECT * FROM foto ORDER BY data DESC, ora DESC LIMIT 0,10 ;";
		$result = mysql_query($sql, $link)
		 or die(mysql_error());
		$numero_eventi = mysql_num_rows($result);
		if($numero_eventi != 0)
		{
?>
<h3> Ultimi 10 eventi con foto</h3>
<br />
<table class="fotoTable">
	<thead>
		<tr>
			<th>Data</th>
			<th>Nome evento</th>
			<th>Numero foto</th>
		</tr>
	</thead>
	
	<tbody>
<?php
			while($row = mysql_fetch_row($result))
			{
				echo ("<tr>\n<td>\n".date("d-m-Y", strtotime($row[1]))."</td>\n<td>\n".$row[3]."</td>\n<td>\n".$row[4]."</td>\n</tr>");
			}
?>
	</tbody>
</table>
<?php
		echo("Numero eventi con foto: <strong>".$numero_eventi."</strong>");
		}
	}
}

?>

Se può servire questo lavoro viene fatto con l'aiuto di mySql...
Vi prego aiutooooo.

Spero di avervi dato l'idea...


Risolto...
 

Discussioni simili