Newsgroup: it.comp.www.php
Titolo: Altro dubbietto idiota...

Con un insegnante  (o con un buon testo) impiegherei la meta' della 
meta' del tempo.
Il problema (se cosi' vogliamo chiamarlo) e' il seguente. Devo creare 
una tabella dischi.
Ora vorrei delucidazioni su quando viene creata effettivamente la 
tabella dischi.
$tabella_dischi= 'create table dischi(
              id int not null auto_increment primary key,
              titolo text,
              datauscita date not null
              )';
//qui ancora non viene creato nulla
$creazione = $joke_table; //qui neanche
if (@mysql_query($table_joke))
    {
    echo '<p>joke table creata con successo!</p>';
    }
    Else
    {
    exit ('<p> Errore nella creazione di joke table '.mysql_error().'</p>');
    }
   /*nell'istruzione if viene creata la tabella. Infatti ho controllato 
da linea di comando mysql. E' normale che per creare una tabella vada 
testata nell'istruzione if? tale istruzione sembrerebbe una regola di 
buona programmazione, invece da quello che vedo risulta essenziale. */
Di nuovo grazie

 buona programmazione, invece da quello che vedo risulta essenziale. */
Risulta essenziale perche` se non crei la tabella non hai niente su cui 
lavorare, quindi e` inutile continuare lo script, probabilmente.
Visto che sei "vergine" di programmazione in PHP, io ti consiglio di 
guardarti direttamente le classi PDO sul manuale online, o di usare un 
manuale che parta con la programmazione a oggetti in PHP. Ne e` stato 
consigliato uno qualche giorno fa, prova a vedere negli archivi del ng.
Bye.

 if (@mysql_query($table_joke))
$table_joke che sarebbe? Se ti crea la table immagino abbia lo stesso
contenuto di $tabella_dischi.
Se non ti piace questa sintassi abbreviata puoi sempre fare:
$res = @mysql_query($table_joke) ;
if (res) {
...
} else {
...
}

 Di nuovo grazie
A me piï¿œ che altro sembri a totale digiuno di programmazione; non ï¿œ
certo l'istruzione if che crea la tabella ma la chiamata alla funzione
mysql_query che come dice il nome esegue una query su una connessione
aperta; il contenuto di $table_joke ï¿œ semplicemente una istruzione mysql
valida, la potresti incollare direttamente nella console di mysql e non
cambierebbe il risultato.
Giï¿œ che ci siamo ti dico che la chiocciolina ï¿œ un operatore di silence
che nascande l'output degli errori.
Praticamente viene prima eseguita la query e successivamente passato
all'if il risultato dell'operazione visto che ï¿œ buona norma controllare
che connessioni a database, query, apertura di file, etc vadano a buon
fine, come ï¿œ sempre necessario validare l'input dell'utente, fare
l'escaping dei parametri passati al mysql etc...
Invice ï¿œ osceno nel 2009 continuare a mischiare php e html, ignorare la
programmazione ad oggetti e compagnia bella, non so che libro tu abbia
ma cambialo. (probabilmente ï¿œ un testo datato su php3/php4)

 ma cambialo. (probabilmente è un testo datato su php3/php4)
Consiglio spassionato: rimuovi quel cavolo di '@' prima delle
istruzioni mysql.
Serve a sopprimere gli eventuali errori/warning, che se devi imparare,
sono abbastanza fondamentali imho ;)

 buona programmazione, invece da quello che vedo risulta essenziale. */
Te lo spiego in modo facile facile.
Il comando mysql_query effettua una query SQL e (semplificando molto) ti 
restituisce TRUE se la query ï¿œ andata a buon fine, FALSE se non ï¿œ andata a 
buon fine.
L'istruzione IF sai cosa fa, in base al fatto che quello che trova tra 
parentesi sia vero o falso.
Praticamente quel pezzo di codice devi leggerlo cosï¿œ.
Esegui la query memorizzata in $table_joke.
Se la query ï¿œ riuscita, ritornerï¿œ un valore TRUE e quindi la tabella ï¿œ stata 
creata con successo.
Se invece la query non ï¿œ riuscita, ritornerï¿œ un valore FALSE e ciï¿œ significa 
che c'ï¿œ stato un errore nella creazione della tabella.
Il fatto di inserire degli assegnamenti all'interno della valutazione di una 
condizione puï¿œ creare qualche difficoltï¿œ all'inizio ma ï¿œ bene capire bene 
cosa significa.
Ti ï¿œ chiaro?
-- 
Elminster 

 ma cambialo. (probabilmente ï¿œ un testo datato su php3/php4)
E' osceno per uno esperto forse. Io a mala pena so di che si parla. per 
me e' pura ignoranza.
Il testo che sto usando e'php e mysql, creare siti web di kevin yank. 
Parla del php4 al passato, pero' effettivamente non e' che sottolinia 
troppo che ci troviamo in php5. Forse e' stato riadattato.
Comunque grazie.
Bud

> Invice ï¿œ osceno nel 2009 continuare a mischiare php e html, 
E se io volessi abbandonare questa oscenitï¿œ, come dovrei fare?
-- 
  Giovanni Cappellini - 
http://www.quacos.com
Realizzazione siti dinamici e consulenze OpenSource:
 
http://www.weblogix.biz