problema script impaginazione

SolidSnake4

Utente Attivo
23 Ott 2007
505
0
0
sto usndo questo script per impaginare su due colonne degli articoli, però quando lo avvio con easy php non mi funziona come mai ?

PHP:
<?php
@include 'config.inc.php';
$colonne = 2;
$sql = "SELECT titolo FROM articoli";

$res = @mysql_query($sql);
$righe = @mysql_num_rows($res);
$rs = @ceil($righe / $colonne);

while($r = @mysql_fetch_array($res)) {
  $data[] = $r['titolo'];
  }

echo "<table>\n";
for($i = 0; $i < $rs; $i++) {
  echo "<tr>\n";
  for($j = 0; $j < $colonne; $j++) {
  if(isset($data[$i + ($j * $rs)])) {
  echo "<td>" . $data[$i + ($j * $rs)] . "</td>\n";
  }
}
echo "</tr>\n";
}
echo "</table>\n";
?>

ovviament el'ho modificato in base al mio db
 

Eliox

Utente Attivo
25 Feb 2005
4.390
3
0
togli tutte le @ davanti alle funzioni, poi metti mysql_error() davanti alle query, così:
PHP:
$res = @mysql_query($sql) or die (mysql_error());

In questo modo se ci sono errori vengono stampati.
Poi è necessario controllare che i dati di connessione e selezione contenuti in config.inc.php siano corretti.
 

SolidSnake4

Utente Attivo
23 Ott 2007
505
0
0
ma la @ davanti a mysql_query la lascio ?
questo è il codice contenuto nel mio file config.inc

PHP:
<?php
$db_host = "localhost";
$db_user = "root";
$db_password = "";
$db_name = "archivionotizie";
?>

aggiungo mysql_error in questo modo ?

PHP:
<?php
@include 'config.inc.php';
$colonne = 2;

$res = @mysql_query($sql) or die (mysql_error());
$righe = @mysql_num_rows($res) or die (mysql_error());
$rs = @ceil($righe / $colonne) or die (mysql_error());

while($r = @mysql_fetch_array($res) or die (mysql_error()) {
  $data[] = $r['titolo'];
  }
  
echo "<table>\n";
for($i = 0; $i < $rs; $i++) {
  echo "<tr>\n";
  for($j = 0; $j < $colonne; $j++) {

  if(isset($data[$i + ($j * $rs)])) {
  echo "<td>" . $data[$i + ($j * $rs)] . "</td>\n";
  }
 }
 echo "</tr>\n";
}
echo "</table>\n";
?>
 
Ultima modifica:

SolidSnake4

Utente Attivo
23 Ott 2007
505
0
0
mi dice che La query e` vuota, che singifica, può essere che l'array data[] sia vuoto ?
 

Eliox

Utente Attivo
25 Feb 2005
4.390
3
0
dove viene valorizzata la variabile $sql? nel codice non la vedo, dovrebbe contenere una query
 

SolidSnake4

Utente Attivo
23 Ott 2007
505
0
0
$sql = "SELECT titolo FROM articoli";

mi ero dimenticato di metterla questa è la query sql, allora facendo partire questo script con easy php mi visualizza la query è vuota, poi lo fatto partire dal mio spazio su altervista e la però mi dava errore sullo script che inseriva penso che stava male cmq tu lo hai testato questo script funziona così come è fatto ?
 

Eliox

Utente Attivo
25 Feb 2005
4.390
3
0
Si l'ho usato spesso, che errore ti dava in remoto?
 
Ultima modifica:

SolidSnake4

Utente Attivo
23 Ott 2007
505
0
0
allora praticamente avevo usato uno script per l'inserimento trovato un altro forum su easy php me lo faceva andare poi su altervista mi dava problemi come se non avessi completato tutti i campi richiesti dell'inserimento e non mi faceva inserire niente, poi cmq sono tornato ad usare lo script dell'inserimento delle faq e tutto va bene; sono riuscito anche a far funzionare lo script cancella però ora sto avendo dei problemi con lo script di modifica mi esce una pagina bianca e basta mentre mi sarebbe dovuto uscire i campi della faq in modo da modificarli. Poi un altra domanda posso usare lo script dell'impaginazione a due colonne facendo visualizzare più campi e magari senza usare un array data ?

Comunque ora l'ho sto usando per visualizzare il titolo della faq ma mi appare sempre una pagina bianca ecco il codice:

PHP:
<?php

include 'config.php';
$colonne = 2;
$sql = "SELECT domanda FROM tb_faq";

$res = mysql_query($sql) or die (mysql_error());
$righe = mysql_num_rows($res) or die (mysql_error());
$rs = ceil($righe / $colonne) or die (mysql_error());

while($r = mysql_fetch_array($res) or die (mysql_error())) {
  $data[] = $r['domanda'];
  }
  
echo "<table>\n";
for($i = 0; $i < $rs; $i++) {
  echo "<tr>\n";
  for($j = 0; $j < $colonne; $j++) {

  if(isset($data[$i + ($j * $rs)])) {
  echo "<td>" . $data[$i + ($j * $rs)] . "</td>\n";
  }
 }
 echo "</tr>\n";
}
echo "</table>\n";
?>

questo è il file config:

PHP:
<?php 
class MySQL { 
 function MySQL() 
 { 
  $this->host_name = "localhost";
  $this->user_name = "root";
  $this->password = "";
  $this->data_name = "my_deprice";
  $this->link = mysql_connect($this->host_name, 
                              $this->user_name, 
                              $this->password)
                              or die (mysq_error()); 
  mysql_select_db($this->data_name) or die (mysq_error()); 
  } 
 } 
$data = new MySQL(); 
?>

non mi visualizza niente cosa sbaglio ?
 
Ultima modifica:

Eliox

Utente Attivo
25 Feb 2005
4.390
3
0
mysql_error() si usa per le query, perchè lo usi qui?
PHP:
$rs = ceil($righe / $colonne) or die (mysql_error());

Poi toglilo da

PHP:
while($r = mysql_fetch_array($res) or die (mysql_error()))
ti blocca il ciclo
 

SolidSnake4

Utente Attivo
23 Ott 2007
505
0
0
PHP:
<?php

include 'config.php';
$colonne = 2;
$sql = "SELECT domanda FROM tb_faq";

$res = mysql_query($sql) or die (mysql_error());
$righe = mysql_num_rows($res) or die (mysql_error());
$rs = ceil($righe / $colonne);

while($r = mysql_fetch_array($res)) {
  $data[] = $r['domanda'];
  }
  
echo "<table>\n";
for($i = 0; $i < $rs; $i++) {
  echo "<tr>\n";
  for($j = 0; $j < $colonne; $j++) {

  if(isset($data[$i + ($j * $rs)])) {
  echo "<td>" . $data[$i + ($j * $rs)] . "</td>\n";
  }
 }
 echo "</tr>\n";
}

così va bene ? però continua sempre a darmi solo una pagina bianca
 

SolidSnake4

Utente Attivo
23 Ott 2007
505
0
0
il fatto è questo a me $data[] rimane vuoto non senza nessun elemento. Poi ho un altra domanda

1- con questo script riesco a far incolonnare anche altri campi del mio aricolo, tipo edscrizione, la data l'immagine.
2- ho risolto adesso mi funziona prima del cilco while ho messo $data = array(); e me le visualizza
3- ora per far visualizzare questi articoli su un template diviso in due colonne è difficile ? O devo solo modificare oppurtunamente questo script per l'impaginazione ?
 
Ultima modifica:

Eliox

Utente Attivo
25 Feb 2005
4.390
3
0
Se l'array rimane vuoto e la query è corretta allora l'unica spiegazione e che non ci siano dati in tabella..

Per le altre domande ti consiglio di vedere anche questo script che è un pò più completo
 

SolidSnake4

Utente Attivo
23 Ott 2007
505
0
0
ok provato funziona, senti e se volessi modificarlo in modo che passi alla visualizzazione a due colonne solo se il numero delle righe del db e maggiore di 4, basta mettere un if ( $num_rows > 4 ) allora passa al ciclo, mentre se $num_rows == 4 la visualizza normalmente cioè prendendo tutto lo spazio che c'è a disposizione per il testo, i questo caso basta che selezioni i campi che mi sevono e disporsi come meglio credo giusto ? Poi un altra cosa per lasciare un pò di spazio tra un dato e un altro visto che usa il tag table aggiungo un rigo vuoto in modo che mi distanzi tra loro gli articoli ?
 
Ultima modifica:

Eliox

Utente Attivo
25 Feb 2005
4.390
3
0
1) si un controllo su $num_rows dovrebbe bastare
2) hai provato?
 

SolidSnake4

Utente Attivo
23 Ott 2007
505
0
0
Ora ci provo poi senti se io inserisco 20 articoli non voglio che tutti e 20 vengano visualizzati ma solo alcuni. Io questa cosa la vorrei fare in base l'ora di inserimento dell'articolo, cioè se un giorno metto 10 articoli solo 8 vengono visualizzati però ovviamente scegliendo quelli più recenti mentre gli altri vengono salvati su altri DB. Ma per adesso vorrei solo far limitare la visualizzazione sino ad un numero X di articoli. Imposto un ciclo predefinito ?
Vorrei anche fare in modo di far inserire gli articoli solo agli admin del sito e quindi far vedere solo a loro le opzioni di inserisci, modifica e cancella, mentre per i visitatori solo la possibilità di inserire commenti. Come si fa per fare questo ?
 
Ultima modifica:

Eliox

Utente Attivo
25 Feb 2005
4.390
3
0
1)
PHP:
$query="SELECT articoli FROM tabella ORDER BY data DESC LIMIT 8";
2)
Devi utilizzare le sessioni
 

SolidSnake4

Utente Attivo
23 Ott 2007
505
0
0
1 -
PHP:
$query="SELECT articoli FROM tabella ORDER BY data DESC LIMIT 8";
con questo codice poi posso selezionare anche gli altri campi di un articolo giusto ?

2- con le sessioni posso anche gestire i permessi che hanno i miei collaboratori sul sito in base alla categoria utenti con cui li dividerò ?
 
Ultima modifica:

SolidSnake4

Utente Attivo
23 Ott 2007
505
0
0
Un altra cosa poi, l'admin di questo sito prima di pubblicare un articolo, inserito dagli altri collaboratori, deve avere la possibilità eventulmente di modificarlo e poi un tasto pubblica lo mette in home, e così anche per gli altri ora come faccio a fare questo, metto un altro campo nella tabella articoli chiamandolo enable e lo imposto a 0 se non deve essere pubblicato e 1 se deve essere pubblicato e cmq poi l'ordine con cui devono essere pubblicati dipende da quali ha scelto l'admin. Come posso fare ?
 

Eliox

Utente Attivo
25 Feb 2005
4.390
3
0
Si potresti utilizzare un campo di tipo ENUM valorizzato '0','1', così sei sicuro che non possono essere inseriti altri valori.
 

SolidSnake4

Utente Attivo
23 Ott 2007
505
0
0
e secondo te come è meglio impostarlo che ne pubblica uno alla volta oppure oppure metto un pulsante pubblica e ogni volta poi lo faccio pubblicare e magari l'ordine lo prendo ordinando sempre per id ma controllando il campo enum giusto ?
 
Discussioni simili
Autore Titolo Forum Risposte Data
K Help: problema con uno script di booking in php! PHP 0
M [PHP] Problema script ricezione e invio posta... PHP 1
L [PHP] Problema Script 'Not Found' PHP 4
Punix [PHP] problema script invio e-mail PHP 2
S Problema con script php-javascript PHP 2
P immagine responsive problema con script jquery jQuery 0
C Problema script php PHP 2
C Problema script php PHP 1
T Problema Semplice Script Javascript 1
A Problema con Script js Javascript 1
A Problema script e consigli PHP 6
francesco7 [Problema] esecuzione script Upload file in php PHP 0
2 Problema script jQuery 9
P Problema inserimento controllo su script multiupload... PHP 2
Pi3tro [Problema]Script php PHP 1
S Problema con 2 script nella stessa pagina Javascript 1
A Problema script statistiche PHP 2
S problema con ajax semplice login script Javascript 8
E Problema con uno script php PHP 1
P Problema con uno script Javascript 0
S Problema su script PHP 2
L problema invio newsletter con script proprio in php PHP 10
Emix Problema nell'integrare uno script ad un altro esisnte... Ajax 2
P Problema script conferma cancellazione Javascript 2
D problema script per visualizzare report tradedoubler PHP 1
N problema script php mysql multi upload immagini PHP 31
D Problema nell'invio dei dati di un form ad uno script AJAX Ajax 8
M problema script che forza il download PHP 0
D Problema script registrazione utente php mysql PHP 14
A fancyBox script - problema con pulsanti jQuery 2
G Problema con questo script jQuery 1
P Problema con script facebox Javascript 0
T Problema recupero dati da file [era: help script php] PHP 9
A Problema livelli tra div e script js Javascript 7
C problema con script di lista suggerimenti Javascript 3
S Problema form mail matt's script archive PHP 3
F Problema variabile in uno script jquery jQuery 2
S Problema script muro (era: alex o borgo aiutatemi) PHP 5
F Problema script php PHP 4
T problema script popup Javascript 0
G problema script .js funziona solo in home Javascript 0
A Problema con uno script js Javascript 0
T Problema con script di registrazione utenti su IE PHP 4
neo996sps Problema con query e script PHP PHP 4
M problema script invio email multiplo PHP 8
SolidSnake4 problema script adsense Google AdSense 0
A Problema script mailing list Classic ASP 0
O problema con script tell a friend Javascript 3
G Problema script php PHP 0
L problema con script php PHP 6

Discussioni simili