Newsgroup: it.comp.www.php
Titolo: query che non funziona

//Gestione del Modulo Primo Piano
  $modulo1="SELECT id, modulo, ilfile, visibile FROM moduli WHERE id=1";
  $result_modulo1 = mysql_query($modulo1) or die("Errore: " . 
mysql_error());
  while($riga_modulo1=mysql_fetch_row($result_modulo1)){
   $visibile_modulo1=$riga_modulo1[3];
   }
  $modulo1 = $visibile_modulo1
//Gestione del Modulo Partita
  $modulo2=" SELECT id, modulo, ilfile, visibile FROM moduli WHERE id=2 ";
  $result_modulo2 = mysql_query($modulo2) or die("Errore: " . 
mysql_error());
  while($riga_modulo2=mysql_fetch_row($result_modulo2)){
   $visibile_modulo2=$riga_modulo2[3];
   }
  $modulo2 = $visibile_modulo2
//Gestione del Modulo Prossima Partita
  $modulo3=" SELECT id, modulo, ilfile, visibile FROM moduli WHERE id=3 ";
  $result_modulo3 = mysql_query($modulo3) or die("Errore: " . 
mysql_error());
  while($riga_modulo3=mysql_fetch_row($result_modulo3)){
   $visibile_modulo3=$riga_modulo3[3];
   }
  $modulo3 = $visibile_modulo3
<!-- PRIMOPIANO START -->
<?php if ($modulo1==1){ ?>
<?php include ("news/boxprimopiano.php"); ?>
<?php } ?>
<!-- PRIMO PIANO END -->
<!-- LA PARTITA START -->
<?php if ($modulo2==1){ ?>
<?php include ("news/boxlapartita.php"); ?>
<?php } ?>
<!-- LA PARTITA END -->
<!-- PROSSIMA PARTITA START -->
<?php if ($modulo3==1){ ?>
<?php include ("news/boxnextpartita.php"); ?>
<?php } ?>
<!-- PROSSIMA PARTITA END -->
Credo che quello che sto facendo sia errato, perche non riesco a far 
funzionare il tutto
la tabella moduli  nel db è cosi fatta
id, modulo, ilfile, visibile
1 primo piano primopiano.php 0
2 partita partita.php 0
3 prossima partita prossima.php 0
se visibile = 1 allora fammi vedere il modulo come fatto sopra
credo ci sia una soluzione piu semplice per la query ma non ne vego fuori
mi aiutate?

 mi aiutate?
Comincia con lo specificare *che* errore hai o che problema hai.
Poi abbiamo tante altre cose di cui parlare :)
-- 
Jax

 ha scritto nel messaggio 
news:fa52gf$c6v$2...@tdi.cu.mi.it...

Praticamente:
<?php if ($modulo1==1){ ?>
<?php include ("news/boxprimopiano.php"); ?>
<?php } ?>
funzia
<?php if ($modulo2==1){ ?>
<?php include ("news/boxlapartita.php"); ?>
<?php } ?>
non funzia
<?php if ($modulo3==1){ ?>
<?php include ("news/boxnextpartita.php"); ?>
<?php } ?>
non funzia

 non funzia
...
che intendi per "non funzia" ?
che errori ti dà?
Ciao,
     Fabrizio

 non funzia
Non per fare il pignolo a tutti i costi, ma cazzarola, siamo su un 
newsgroup tecnico, non su it.hobby.fai-da-te
"non funzia", in programmazione, non vuol dire niente.
Se non specifichi che errore hai, o che problema hai, come pretendi che 
possiamo risolverlo? E' come telefonare al meccanico e dirgli "non 
funzia la macchina!", prova a sentire cosa ti risponde.
Per non rendere del tutto inutile questo post, comunque, sappi che non è 
bello aprire/chiudere il tag php ad ogni riga... sarebbe molto meglio 
scrivere
<?
	if (...) {
		altre istruzioni
	}
?>
Non è sicuramente la causa del problema, ma almeno un po' di stile...
-- 
Jax

 ha scritto nel messaggio 
news:1187594282.1...@22g2000hsm.googlegroups.com...



con modulo1 tutto ok
quando vado a scivere modulo2 mi va in loop
Ciao,
     Fabrizio

 ha scritto nel messaggio 
news:fabiuv$6ce$1...@tdi.cu.mi.it...

sorry.....

 mi aiutate?
Ho provato comunque a capirci qualcosa... da quel poco che ho capito, 
hai una tabella con dei "moduli" che, a seconda del flag visibile, 
vengono inclusi o non inclusi.
Da come scrivi direi che la logica dei database non ti è molto familiare...
Se hai un db, usalo... voglio dire, invece di fare 3 sql diverse, fanne 
una e cicla gli N record; cosa succede se i tuoi moduli diventano 4 o 5 
o 6? Dovrai aggiungere altre N sql modificando il sorgente del tuo 
programma, ogni volta... per questo sono stati inventati i db, per fare 
in modo che un programma possa gestire delle informazioni in numero 
variabile.
Poi, visto che hai questa tabella con i filename dei moduli, perché poi 
te li reinventi? Se i tuoi moduli hanno dei nomi diversi da quelli nel 
database, basta che li cambi nel db e poi li prendi dal db in lettura...
Una cosa del genere, insomma:
$sql_moduli="SELECT * FROM moduli";
$fetch = mysql_query($sql_moduli);
while ($record = mysql_fetch_row($fetch)) {
	if ($record["visibile"]) include ("news/" . $record["ilfile"];
}
(scritto di getto e non testato, occhio)
-- 
Jax

 ha scritto nel messaggio 
news:fabovv$c4m$1...@tdi.cu.mi.it...

é esattamente la logica che avevo in mente
i nomi dei file era una previsione di utilizzarli, nel frattempo li avevo 
scritti  a mano, ecco perche reinventati
//Gestione dei Moduli
   $sql_moduli="SELECT id, modulo, ilfile, visibile FROM moduli ";
   $fetch = mysql_query($sql_moduli);
   while ($record = mysql_fetch_row($fetch)) {
       if ($record["visibile"]==1) { include ("news/" . $record["ilfile"];
       }
   }
cavolo non ne vengo fuori, ecco cosa ho fatto ma non è corretta

Claudia G ha scritto:

A me sembra corretta. Però persisti nell'omertà... non stai scrivendo un 
sms, sii pure prolissa :)
Se nonostante tutto i file non vengono inclusi, hai solo una strada: 
debuggare... ossia, dove ritieni sia utile, mettici un echo $variabile, 
in questo modo vedrai come si comporta una (o più) variabile man mano 
che il programma gira... per esempio:
while ($record = mysql_fetch_row($fetch)) {
	echo $record["modulo"] . " " . $record["visibile"] . "<br>";
...
Una banalità, ma non si sa mai: hai impostato a 1 il campo visibile per 
tutti i moduli? Altrimenti è ovvio che non funzioni.
-- 
Jax

 tutti i moduli? Altrimenti è ovvio che non funzioni.
il campo visibile ho impostato 0 oppure 1
se 0 non farlo vedere
se 1 fallo vedere
comunque ci posso essere alcune righe con valore 0 e righe con valore 1
non so ste sta logica è corretta, credo di no visto non va

 non so ste sta logica è corretta, credo di no visto non va
La logica è corretta, anche perché è veramente banale.
La connessione al db prima di eseguire la query, la fai? Io l'ho dato 
per scontato.
	$host = "127.0.0.1";
	$username = "cheneso";
	$dbname = "ildb";
	$password = "123456";
	$mysql_conn = mysql_connect($host, $username, $password)
		or die("Impossibile stabilire una connessione.");
	$mysql_db = @mysql_select_db($dbname, $mysql_conn)
		or die("Impossibile selezionare il database.");
-- 
Jax

         or die("Impossibile stabilire una connessione.");
Inoltre, cosa che mi era sfuggita prima, la chiamata a mysql_query 
presuppone anche di passargli il riferimento alla connessione!
mysql_query($sql_moduli, $mysql_conn);
-- 
Jax

 ha scritto nel messaggio 
news:fac9kh$u1l$1...@tdi.cu.mi.it...

//Gestione dei Moduli
   $sql_moduli="SELECT id, modulo, ilfile, visibile, ordine FROM moduli 
ORDER BY ordine ";
   $fetch = mysql_query($sql_moduli);
   while ($record = mysql_fetch_row($fetch)) {
        if ($record["visibile"] == 1) {
        include ("news/" . $record["ilfile"];
        }
    }
queste 3 righe sono quelle che mi danno errore nella query posta sopra
la connessione è tutta a posto
    if ($record["visibile"] == 1) {


 mi aiutate?
La pappa pronta (testata e funzionante, se non va so'cazzi tua):
<?
	$host = "localhost";
	$username = "root";
	$password = "";
	$dbname = "prova";
	$sql_conn = mysql_connect($host, $username, $password)
		or die("Impossibile stabilire una connessione.");
	$sql_db = @mysql_select_db($dbname, $sql_conn)
		or die("Impossibile selezionare il database.");
	$sql = "select * from moduli";
	$query = mysql_query($sql, $sql_conn);
	while ($record = mysql_fetch_array($query)) {
		if ($record["visibile"]) include ("news/" . $record["ilfile"]);
	}
?>
Certo che se ti sprecavi di più a scrivere che errori ti dava, avevamo 
già risolto da ieri...
E smettila di firmarti con un nick femminile.
-- 
Jax

 la connessione è tutta a posto
Ti ho risposto al post iniziale. Comunque, visto che siamo arrivati al 
credo quarto post in cui ti chiedevo CHE CAZZO di errore ti dava e tu 
non me l'hai detto UNA VOLTA che fosse una (questa compresa), mi sono 
già pentito di averti dato la pappa pronta... d'ora in poi ti attacchi 
(per quanto mi riguarda).
Eccheccazzo...
-- 
Jax

 ha scritto nel messaggio 
news:facj9s$83l$1...@tdi.cu.mi.it...

non riesco a vedere che tipo di errore, il browser ( IE7) mi dice solo 
errore di connessione, io ero abituata con .asp che mi indicava la riga dove 
stava errore, adesso con apache e php non riesco ad avere questo, ho solo un 
messaggio di errore connessione, ecco perche non sapevo darti una 
spiegazione, andavo per tentativi.
ho apache o php configuarati male?

 ha scritto nel messaggio 
news:facirh$7k3$1...@tdi.cu.mi.it...

Grazie mille
sto realizzando il sito nuovo della mia squadra di volley, molte volte mi 
perdo per sciocchezze, è che sono alle prime armi e per quanto faccia delle 
prove mi incarto su banalita