Torna indietro   Serverplan Forum > Risorse per Webmaster > PHP

Rispondi
 
LinkBack Strumenti discussione Modalità visualizzazione
  #1 (permalink)  
Vecchio 23-10-2006, 11.23.44
Junior Member
 
Data registrazione: 29-03-2006
Messaggi: 19
alice1 is on a distinguished road
Predefinito Paginazione dati

Ho un problema nella paginazione dei dati...ho trovato questo interessante articolo
http://php.html.it/articoli/leggi/85...one-di-dati/3/
mi sembrava tutto chiaro ma mi da questo errore

Codice:
Warning: mysql_fetch_row(): supplied argument is not a valid MySQL result resource in /home/mhd-01/www..........php on line 30
la linea 30 corrisponde a
Codice:
$count = mysql_query("SELECT COUNT(id) FROM nome_tabella");
nella quale naturalmente ho inserito i miei dati
Qualcuno mi pu? aiutare?
Rispondi citando
  #2 (permalink)  
Vecchio 23-10-2006, 11.48.27
Junior Member
 
Data registrazione: 29-03-2006
Messaggi: 19
alice1 is on a distinguished road
Predefinito

Scusate ho sbagliato a scrivere la linea di codice 30...
Codice:
$res_count = mysql_fetch_array($count);
questa ? quella giusta
Rispondi citando
  #3 (permalink)  
Vecchio 23-10-2006, 12.02.26
Junior Member
 
Data registrazione: 29-03-2006
Messaggi: 19
alice1 is on a distinguished road
Predefinito

Ho provato a modificarla con
Codice:
$res_count = mysql_fetch_row($count);
ma niente
Rispondi citando
  #4 (permalink)  
Vecchio 23-10-2006, 12.18.24
Member
 
Data registrazione: 08-01-2006
Residenza: San Giorgio di Mantova
Messaggi: 88
mbmihele is on a distinguished road
Predefinito

Vedi http://it2.php.net/mysql_fetch_row
Rispondi citando
  #5 (permalink)  
Vecchio 23-10-2006, 14.15.51
Junior Member
 
Data registrazione: 29-03-2006
Messaggi: 19
alice1 is on a distinguished road
Predefinito

Sto provando e riprovando, ma niente....ora ho optato per quest'altra soluzione. Scrivo la pagina intera
Codice:
<?php 
$db_host="";
$db_user="";
$db_password="";
$db_database="";

$connessione=mysql_connect($db_host,$db_user,$db_password) or die ("Errore nella connessione al Mysql:" . mysql_error());
mysql_select_db($db_database,$connessione) or die ("Errore nella selezione del db:" . mysql_error());
$recordxpag = 5;

$query=mysql_query("SELECT AnnoRipresa, Regione FROM fotoaereeverticali WHERE AnnoRipresa LIKE '%$_POST[AnnoRipresa]%'
AND Regione LIKE '%$_POST[Regione]%'"); 

$risultato=mysql_query($query,$connessione) or die ("Errore nella query:" . mysql_error()); 
$righe = mysql_num_rows($risultato); 
$numpag = ceil($righe/$recordxpag); 
include 'paginazione.inc.php'; 
if ($righe<1) 
  { 
   echo "non ci sono dati"; 
    } 
else 
{ 
 $da = (($pag-1) * $recordxpag); 
  $a = $da + $recordxpag; 
  if ($a > $righe){$a=$righe;} 
 for ($i = $da; $i < $a; $i++) 
{
while($riga=mysql_fetch_array($risultato))
{?>
<tr>
<td colspan="2">
<?php
print ("[img].$riga[Foto].[/img]");?>
</tr>
<tr>
<td height="22" width="20%"><h4>Anno Ripresa</td>
<td height="22" width="20%"><h4>Regione</td>
</tr>
<tr><?php print("<tr>");
print ("<td>$riga[AnnoRipresa]</td>");
print ("<td>$riga[Regione]</td>");
print("</tr>");?>
?>
Questa ? la pagina paginazione.inc.php
Codice:
<?php 
	//numero di link da visualizzare nel menu.
$num_link=5;
$querystring = ""; 
// Recupero il numero di pagina corrente.
$pag = isset($_GET['pag'])? $_GET['pag'] : 1; 

//se ho meno link di quanti ne voglio visualizzare li visualizzo tutti 
if($numpag <= $num_links) 
  { 
   for ($pagina = 1; $pagina <= $numpag; $pagina++) 
     { 
      if ($pagina == $pag) 
        echo "<a class=\"pag_selected\" href\"=?pag={$pagina}{$querystring}\" title=\"Vai a pagina $pagina\"> $pagina </a> "; 
      else 
        echo "<a class=\"pag_link\" href=\"?pag={$pagina}{$querystring}\" title=\"Vai a pagina $pagina\"> $pagina </a> "; 
     } 
  } 
//se la pag corrente ? tra le prime $num_links/2 --> stampo i primi $nun_links link 
else if($pag <= ceil($num_links/2)) 
  { 
   for ($pagina=1; $pagina<=$num_links; $pagina++) 
     { 
      if ($pagina == $pag) 
        echo "<a class=\"pag_selected\" href\"=?pag={$pagina}{$querystring}\" title=\"Vai a pagina $pagina\"> $pagina </a> "; 
      else 
        echo "<a class=\"pag_link\" href=\"?pag={$pagina}{$querystring}\" title=\"Vai a pagina $pagina\"> $pagina </a> "; 
     } 
   echo "<a class=\"pag_link\" href=\"?pag={$numpag}{$querystring}\" title=\"Vai all'ultima pagina\"> >> </a> "; 
  } 

//se la pag corrente ? tra le ultime $num_links/2 --> stampo gli ultimi $nun_links link 
else if($pag > ($numpag-ceil($num_links/2))) 
  { 
   echo "<a class=\"pag_link\" href=\"?pag=1{$querystring}\" title=\"Vai alla prima pagina\"> << </a> "; 
   for ($pagina=$numpag-$num_links+1; $pagina<=$numpag; $pagina++) 
     { 
      if ($pagina == $pag) 
        echo "<a class=\"pag_selected\" href=\"?pag={$pagina}{$querystring}\" title=\"Vai a pagina $pagina\"> $pagina </a> "; 
      else 
        echo "<a class=\"pag_link\" href=\"?pag={$pagina}{$querystring}\" title=\"Vai a pagina $pagina\"> $pagina </a> "; 
     } 
  } 

//Altrimenti la pagina corrente ? una dell centrali --> stampo i $nun_links/2 link prima ed $nun_links/2 link dopo 
else 
  { 
   echo "<a class=\"pag_link\" href=\"?pag=1{$querystring}\" title=\"Vai alla prima pagina\"> << </a> "; 
   for ($pagina = $pag-ceil($num_links/2-1); $pagina <= $pag+ceil($num_links/2-1); $pagina++) 
     { 
      if ($pagina == $pag) 
        echo "<a class=\"pag_selected\" href=\"?pag={$pagina}{$querystring}\" title=\"Vai a pagina $pagina\"> $pagina </a> "; 
      else 
         echo "<a class=\"pag_link\" href=\"?pag={$pagina}{$querystring}\" title=\"Vai a pagina $pagina\"> $pagina </a> "; 
     } 
   echo "<a class=\"pag_link\" href=\"?pag=$numpag\" title=\"Vai all'ultima pagina\"> >> </a> "; 
  } ?>
E mi da questo errore
Codice:
Parse error: syntax error, unexpected $end in /home/mhd-01/www.......php on line 137
Rispondi citando
  #6 (permalink)  
Vecchio 23-10-2006, 17.36.42
Member
 
Data registrazione: 08-01-2006
Residenza: San Giorgio di Mantova
Messaggi: 88
mbmihele is on a distinguished road
Predefinito

IL parse error c'? quando hai dimenticato ; o di chudere dei testi con le " o le )
.
Prova e rivedere la riga 136 e 137 se la sintassi ? giusta.

Saluti
Rispondi citando
  #7 (permalink)  
Vecchio 24-10-2006, 11.37.11
Junior Member
 
Data registrazione: 29-03-2006
Messaggi: 19
alice1 is on a distinguished road
Predefinito

Avevo dimenticato di chiudere una }
ora per? mi dice
Codice:
Errore nella query:You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'Resource id #2' at line 1
Rispondi citando
  #8 (permalink)  
Vecchio 24-10-2006, 11.44.35
Member
 
Data registrazione: 08-01-2006
Residenza: San Giorgio di Mantova
Messaggi: 88
mbmihele is on a distinguished road
Predefinito

Non saprei per? puoi usare un trucco per delle prove:

fai stampare a video la query o le query .

la copi negli appunti e la piazzi ad esempio in hpMyAdmin per vedere risultati.


saluti
Rispondi citando
  #9 (permalink)  
Vecchio 15-11-2006, 08.58.16
Junior Member
 
Data registrazione: 29-03-2006
Messaggi: 19
alice1 is on a distinguished road
Predefinito

Ho finalmente risolto il problema......posto la pagina, forse a qualcuno potrebbe servire.
Comunque grazie a tutti per i consigli
Codice:
<?php 
$db_host="..........";
$db_user=".........";
$db_password="...........";
$db_database="...........";

$connessione=mysql_connect($db_host,$db_user,$db_password) or die ("Errore nella connessione al Mysql:" . mysql_error());
mysql_select_db($db_database,$connessione) or die ("Errore nella selezione del db:" . mysql_error());

$numero_record = 3; 
if(!isset($_GET["inizio"])){ 
    $inizio = 0; 
}else{ 
    $inizio = $_GET["inizio"]; 
}  
$Foto = (isset($_POST["Foto"]) ? $_POST["Foto"] : base64_decode($_GET["Foto"]));
$AnnoRipresa = (isset($_POST["AnnoRipresa"]) ? $_POST["AnnoRipresa"] : base64_decode($_GET["AnnoRipresa"]));
$Id = (isset($_POST["Id"]) ? $_POST["Id"] : base64_decode($_GET["Id"]));

$query_limit="SELECT AnnoRipresa, Id, Foto 
FROM nome_tabella 
WHERE AnnoRipresa LIKE '%".addslashes($AnnoRipresa)."%'
order by Id limit $inizio, $numero_record"; 

$query = mysql_query($query_limit) or die(mysql_error());

$select="SELECT count(*) FROM nome_tabella 
WHERE AnnoRipresa LIKE '%".addslashes($AnnoRipresa)."%'"; 

$query2 = mysql_query($select); 

$numero_record_totali = mysql_fetch_row($query2);
$numero_record_totali = $numero_record_totali[0];
$numero_pagine = ceil($numero_record_totali/$numero_record);  

$pagina_corrente = ceil(($inizio/$numero_record) + 1);

$this_Foto = "";
$this_AnnoRipresa = "";
$this_Id = "";

while($riga=mysql_fetch_array($query))
{
$this_Foto=$riga['Foto'];
$this_AnnoRipresa=$riga['AnnoRipresa'];
$this_Id=$riga['Id'];
?>
[img]ridimensiona.php?Foto=<?php print ([/img]">
<?php 
echo . $this_AnnoRipresa .;
echo . $this_Id .;
} 

 if($numero_pagine > 1){ 
     for($pagina = 1; $pagina <= $numero_pagine; $pagina++){ 
          if($pagina == $pagina_corrente){ ?>
              <?echo $pagina;?> 

         <?php  }else{
echo"<a href=\"pagina.php?inizio=".(($pagina - 1) * $numero_record)."&amp;AnnoRipresa=".base64_encode($AnnoRipresa).
"&amp;Id=".base64_encode($Id).
"&amp;Foto=".base64_encode($Foto)."\">".$pagina."</a>";
          
} 
} 
} 

?>
Rispondi citando
  #10 (permalink)  
Vecchio 09-01-2007, 12.55.13
Junior Member
 
Data registrazione: 29-03-2006
Messaggi: 19
alice1 is on a distinguished road
Predefinito

Recuperando il mio post precedente vorrei chiedere a qualcuno come fare per modificare la visualizzazione della paginazione....mi spiego meglio: con il codice da me postato io riesco a visualizzare il numero totale dei record e il numero delle pagine (1 2 3 4.....) contenenti i risultati della query.....E' possibile sostituire i numeri con due < > che mi consentano di navigare avanti e indietro nei risultati?
Rispondi citando
Rispondi

Strumenti discussione
Modalità visualizzazione

Regole di scrittura
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is Attivato
Le faccine sono Attivato
Il codice [IMG] è Attivato
Il codice HTML è Disattivato
Trackbacks are Attivato
Pingbacks are Attivato
Refbacks are Attivato


Discussioni simili
Discussione Autore discussione Forum Risposte Ultimo messaggio
mail con dati d'accesso dynamo Quesiti pre-acquisto 1 08-07-2008 17.41.00
Dati che concorrono al totale traffico WalterT Quesiti pre-acquisto 5 23-02-2006 12.05.53
Dati fatturazione e Dati intestatario colors Quesiti pre-acquisto 5 27-01-2006 12.33.54
Bloccato nell'inserimento dei dati di fatturazione longline Quesiti pre-acquisto 3 09-11-2004 23.28.39
DUMP DATI IN MYSQL assone PHP 2 09-06-2003 15.48.18


Tutti gli orari sono GMT +1. Adesso sono le 00.04.21.


Powered by vBulletin versione 3.7.3
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
Content Relevant URLs by vBSEO 3.1.0
Traduzione italiana : www.vbulletin.it