Autore Topic: Php, Blocco Condizionale If  (Letto 3081 volte)

djwiper

  • Utente
  • **
  • Post: 197
  • Gioco Preferito: Sim City
Php, Blocco Condizionale If
« il: 11 Novembre 2005, 09:27:48 »
 Premetto che sono alle prime armi con il php e dovrei realizzare un'applicazione. Manuale alla mano (www.php.net, quale miglior manuale? :D) sto cercando di fare la struttura per questa applicazione, per la grafica se ne parla dopo...

Il mio problema, con un bel riassunto, sta qui:

Codice: [Seleziona]
<?
$conf_site_online = 0;
if ($conf_site_online <> 1) {
// Codice
}
?>

Lanciando questa piccola applicazione (index.php) mi appare un bel 'parse error' che mi informa di un errore nella seconda riga, ovvero if(condizione).

Cosa potrebbe essere? :huh:

RISPOSTA:
che avevo dimenticato un ; in una funzione chiamata prima di quel blocco... Distrazione rox!
Ho capito di odiare le firme...

hiryu

  • Utente
  • **
  • Post: 649
    • http://hiryu.netsons.org/
  • Gioco Preferito: Wizard Of Wor
Php, Blocco Condizionale If
« Risposta #1 il: 11 Novembre 2005, 10:21:16 »
 sei sicuro che php riconosca il comando <>? l'operatore "diverso" dovrebbe essere !=
Elwood: "E' partito un pistone"
Jake: "Poi torna?"
________________________________________________________
Hiryu @ http://hiryu.netsons.org | http://www.virb.com/hiryu

Alberto

  • Utente
  • **
  • Post: 589
  • Gioco Preferito: Grand Prix Circuit
Php, Blocco Condizionale If
« Risposta #2 il: 11 Novembre 2005, 10:38:15 »
 
Citazione
www.php.net, quale miglior manuale?

Se posso darti un consiglio,evita le guide on-line.Meglio un bel manuale cartaceo,per esempio "PHP e MySQL" di Stobart-Vassileiou (ed.Apogeo) che è chiaro e completo.
Costa qualche soldino (circa 40 euro) ma ti assicuro che ne vale la pena  ;) .

Ciao

djwiper

  • Utente
  • **
  • Post: 197
  • Gioco Preferito: Sim City
Php, Blocco Condizionale If
« Risposta #3 il: 11 Novembre 2005, 12:05:43 »
 
Citazione
sei sicuro che php riconosca il comando <>? l'operatore "diverso" dovrebbe essere !=
Effettivamente in MySql uso sempre != ma in php sembra che vada bene sia <> che !=. Ho fatto la prova in questo istante e, a meno di errori di distrazioni, lo script funziona ugualmente. Per la cronaca sono con EasyPHP 1.8, in windows XP.


Citazione
Meglio un bel manuale cartaceo,per esempio "PHP e MySQL" di Stobart-Vassileiou (ed.Apogeo) che è chiaro e completo.
Grazie Alberto, se lo trovo in qualche libreria gli do una occhiata. A dirla tutta l'idea di usare il php per questa applicazione mi è venuta stamattina... :ciauz:  
Ho capito di odiare le firme...

eregil

  • Administrator
  • Utente
  • *****
  • Post: 710
  • Gioco Preferito: Impossible Mission
Php, Blocco Condizionale If
« Risposta #4 il: 11 Novembre 2005, 14:27:01 »
 Io raccomanderei cmq di abituarsi a scrivere != piuttosto che <>, anche se fosse solo per non traumatizzarsi quando si passa ad un linguaggio in cui <> non è corretto.

Già che ci siamo raccomando anche attenzione nell'utilizzo di operatori molto simili tra loro ma che presentano qualche sottile differenza: in PHP è il caso, ad esempio, degli operatori logici &&, || e and, or, che differiscono in priorità.

Citazione da: "Alberto"
Citazione
www.php.net, quale miglior manuale?

Se posso darti un consiglio,evita le guide on-line.Meglio un bel manuale cartaceo
Non sono completamente d'accordo. Avere qualcosa di stampato è decisamente più comodo, e può essere di importanza fondamentale per chi non è semplicemente alle prime armi con un linguaggio ma ha bisogno di una guida di programmazione "passo passo", perché non ha esperienza con nessun linguaggio; ma dall'altro lato ti espone a rischi di obsolescenza della guida, perciò spesso non funziona come soluzione alternativa alle guide online, ma solo complementare. Se si ha dietro un'esperienza con linguaggi simili, tanto vale evitare la spesa...

Spiego meglio cosa intendo raccontando un esempio preso dalla mia esperienza diretta: quando ero io alle prime armi col PHP mi feci tentare da "Programmare con PHP 4" sempre edizioni Apogeo, e la comprai. Per carità, sfogliare un libro è più comodo che leggere a schermo e trovare gli esempi è più facile con un indice "classico" da libro, però mi scontrai con un problema che, se non avessi avuto accesso anche a guide online, sarebbe stato insormontabile: il manuale era stato scritto ai tempi di PHP 4.0 RC1, mentre io avevo installato PHP 4.3.0.

Da PHP 4.0 a 4.3 sono cambiate molte cose, in particolare i nomi di certe variabili superglobal e il modo di accedere ai contenuti delle variabili ottenuti con metodi post e nella stringa dell'URL dietro ampersand... e io non potevo certo saperlo dal manuale. Senza la possibilità di consultare guide online non ne sarei uscito.

Neanche a dirlo, nel passaggio da PHP 4 a PHP 5 non mi sono comprato manuali... :)

In definitiva, la decisione di acquistare un manuale IMHO deve dipendere dal punto di partenza di chi deve imparare, e "evita le guide online" a priori non è un buon consiglio, in particolare in questo caso in cui ci si riferisce a quella ufficiale di php.net: piuttosto, raccomanderei di non farsi scoraggiare se le guide che si trovano online sono troppo "tecniche"; in quel caso ci si può (e in questo caso direi che ci si deve ;) ) riservare di consultarle successivamente.

La guida online di PHP ha poi il pregio di essere corredata da note aggiunte dagli utenti, a volte molto chiarificatrici (se non si hanno problemi con l'inglese...).
Non rispondo a richieste private, di qualunque genere esse siano.
Per domande tecniche leggete le FAQ e usate l'apposito forum.
Per questioni amministrative contattate lo staff tramite il form Contatti sul sito.

djwiper

  • Utente
  • **
  • Post: 197
  • Gioco Preferito: Sim City
Php, Blocco Condizionale If
« Risposta #5 il: 11 Novembre 2005, 15:14:13 »
 Il discorso di Eregil è tutto sommato corretto, però è anche vero che Alberto mi ha consigliato un libro la cui funzione è quella di far apprendere le basi di PHP. Forse le basi, ad esempio il concetto di classe, di variabile etc, del linguaggio PHP non hanno subito modifiche tali da   rendere traumatico il passaggio dalla versione x alla versione y. Ma questa è una considerazione a naso...

Per altri linguaggi non c'è il problema di obsolescenza delle informazioni. ASP, ad esempio, non ha subito quasi nessun cambiamento dalle sue primissime incarnazioni ad ora, eccezion fatta per l'odioso .NET

Grazie per i consigli..
 
Ho capito di odiare le firme...

eregil

  • Administrator
  • Utente
  • *****
  • Post: 710
  • Gioco Preferito: Impossible Mission
Php, Blocco Condizionale If
« Risposta #6 il: 11 Novembre 2005, 18:25:13 »
 
Citazione da: "djwiper"
Forse le basi, ad esempio il concetto di classe, di variabile etc, del linguaggio PHP non hanno subito modifiche tali da   rendere traumatico il passaggio dalla versione x alla versione y. Ma questa è una considerazione a naso...
I cambi di versione "major" (da 3 a 4 e ora da 4 a 5) di PHP sono giustificatissimi. Ci sono proprio differenze importanti nel linguaggio. Solitamente nulla di traumatico, in effetti, ma abbastanza da rendere molto laboriosa la conversione da PHP n a PHP n+1 di grandi insiemi di script. Motivo per il quale la transizione va pianificata attentamente...

Andando a memoria ti posso dire che per esempio da PHP 3 a 4 è cambiata completamente la gestione dei cookie; non di molto a livello di sintassi, però è cambiato l'ordine in cui vengono processate le direttive relative ai cookie in uno script, rendendo di fatto incompatibili gli script di una versione con l'interprete dell'altra, dove l'ordine di esecuzione era importante.

Da PHP 4 a PHP 5 sono state introdotte le proprietà "protected" e "private" assenti in PHP 4 ed è cambiata la convenzione per il nome del costruttore (nel 5 si chiama __construct, se non erro con due underscore). In questo caso però è stata conservata anche la sintassi del 4 (almeno in PHP 5.0).
Non rispondo a richieste private, di qualunque genere esse siano.
Per domande tecniche leggete le FAQ e usate l'apposito forum.
Per questioni amministrative contattate lo staff tramite il form Contatti sul sito.

djwiper

  • Utente
  • **
  • Post: 197
  • Gioco Preferito: Sim City
Php, Blocco Condizionale If
« Risposta #7 il: 12 Novembre 2005, 10:48:13 »
 Arrivato a questo punto mi sorge un dubbio... Visto che l'interprete PHP si evolve continuamente, ad esempio parallelamente coesistono le versioni 4.x e la versione 5, non vorrei sbagliare concentrandomi sullo studio della versione 4.x o in altri termini 'una versione che è vecchia'
Voi, che da quanto capisco, siete abbastanza esperti cosa mi consigliate?
 
Ho capito di odiare le firme...

eregil

  • Administrator
  • Utente
  • *****
  • Post: 710
  • Gioco Preferito: Impossible Mission
Php, Blocco Condizionale If
« Risposta #8 il: 12 Novembre 2005, 14:35:26 »
 Se stai già studiando la versione 4, tranquillizzati: le differenze tra 4.x e 5 sono importanti, ma non molte in termini numerici.

Perciò, lo studio della versione 5 è facile se conosci già bene la 4.3 (o 4.4). Se in più conosci anche almeno le basi di un altro linguaggio a oggetti (C++ o, ancora meglio, Java), diventa letteralmente una passeggiata. Giusto il tempo di leggere un articolo sulle differenze tra PHP 4 e 5, assimilarle, magari provare qualche esempio semplice, e sei pronto a partire. :)

Se invece vieni "solo" da PHP 4 senza esperienza di altri linguaggi a oggetti, passando alla 5 avrai in più la difficoltà tipica di chi si avvicina per la prima volta ad un "vero" linguaggio a oggetti (e soltanto quella difficoltà).

Considerando che (al contrario di quanto succede con Java) resta possibile utilizzare PHP 5 senza programmare a oggetti, se non è che hai bisogno di lavorare con un team o di esaminare script di altri, la programmazione a oggetti puoi anche impararla con calma, prendendoti il tempo di cui hai bisogno.

Ciò detto, penso che tu abbia gli elementi per scegliere il tuo percorso, ma se hai altri dubbi, chiedi pure.
Non rispondo a richieste private, di qualunque genere esse siano.
Per domande tecniche leggete le FAQ e usate l'apposito forum.
Per questioni amministrative contattate lo staff tramite il form Contatti sul sito.

djwiper

  • Utente
  • **
  • Post: 197
  • Gioco Preferito: Sim City
Php, Blocco Condizionale If
« Risposta #9 il: 13 Novembre 2005, 01:33:01 »
 Innanzitutto grazie per la disponibilità, Eregil...
Diciamo che, a parte Visual Basic, Realbasic e ASP non conosco nessun altro linguaggio di programmazione C-Like se mi passi il termine. Comunque credo di lasciar perdere la versione 5.0 anche perchè mi basta conoscere un minimo di PHP giusto per fare due query con MySQL, e poi il mio scopo si ferma li...

Grazie ancora, è sempre un piacere scambiare quattro chiacchere con voi.
Ho capito di odiare le firme...

Alberto

  • Utente
  • **
  • Post: 589
  • Gioco Preferito: Grand Prix Circuit
Php, Blocco Condizionale If
« Risposta #10 il: 14 Novembre 2005, 11:51:50 »
 Ciao ragazzi

Gasp,non credevo che un semplice suggerimento potesse dar vita a una simile discussione  :)

Citazione
Spiego meglio cosa intendo raccontando un esempio preso dalla mia esperienza diretta: quando ero io alle prime armi col PHP mi feci tentare da "Programmare con PHP 4" sempre edizioni Apogeo, e la comprai. Per carità, sfogliare un libro è più comodo che leggere a schermo e trovare gli esempi è più facile con un indice "classico" da libro, però mi scontrai con un problema che, se non avessi avuto accesso anche a guide online, sarebbe stato insormontabile: il manuale era stato scritto ai tempi di PHP 4.0 RC1, mentre io avevo installato PHP 4.3.0.

Sì,il mio commento nasceva appunto dal fatto che per uno alle prime esperienze con PHP è meglio avere una guida cartacea a disposizione;non conosco l'impostazione di php.net,ma per esperienza so che spesso le guide on-line sono più che altro dei tutorial che contengono esempi di programmazione,senza spiegare le cose troppo in dettaglio (forse anche per non tediare chi visita il sito).

D'altro canto,giustamente (e mi trovo d'accordo con eregil) per chi già ha una buona conoscenza del linguaggio,specie se questo evolve rapidamente,risulta più conveniente consultare siti specializzati,specie per la ricerca del significato di alcuni costrutti,modifiche alla sintassi ecc...

Personalmente,io PHP l'ho usato solo a scopo didattico (progetto di una base di dati,maschere,ecc...) per cui mi trovavo nella situazione di chi deve imparare la logica del linguaggio in maniera abbastanza approfondita,avendo già competenze di C e Java (benchè la programmazione a oggetti non c'entrasse minimamente) e devo dire che,senza un simile supporto,a guide on-line non ce l'avrei mai fatta.

Comunque ciascuno di noi è diverso e viene da esperienze diverse;c'e' chi si trova meglio in un modo,chi in un altro.Per la serie:il modo è bello perchè è vario... ;)

Bye

   

Alberto

  • Utente
  • **
  • Post: 589
  • Gioco Preferito: Grand Prix Circuit
Php, Blocco Condizionale If
« Risposta #11 il: 14 Novembre 2005, 11:52:31 »
 Ciao ragazzi

Gasp,non credevo che un semplice suggerimento potesse dar vita a una simile discussione  :)

Citazione
Spiego meglio cosa intendo raccontando un esempio preso dalla mia esperienza diretta: quando ero io alle prime armi col PHP mi feci tentare da "Programmare con PHP 4" sempre edizioni Apogeo, e la comprai. Per carità, sfogliare un libro è più comodo che leggere a schermo e trovare gli esempi è più facile con un indice "classico" da libro, però mi scontrai con un problema che, se non avessi avuto accesso anche a guide online, sarebbe stato insormontabile: il manuale era stato scritto ai tempi di PHP 4.0 RC1, mentre io avevo installato PHP 4.3.0.

Sì,il mio commento nasceva appunto dal fatto che per uno alle prime esperienze con PHP è meglio avere una guida cartacea a disposizione;non conosco l'impostazione di php.net,ma per esperienza so che spesso le guide on-line sono più che altro dei tutorial che contengono esempi di programmazione,senza spiegare le cose troppo in dettaglio (forse anche per non tediare chi visita il sito).

D'altro canto,giustamente (e mi trovo d'accordo con eregil) per chi già ha una buona conoscenza del linguaggio,specie se questo evolve rapidamente,risulta più conveniente consultare siti specializzati,specie per la ricerca del significato di alcuni costrutti,modifiche alla sintassi ecc...

Personalmente,io PHP l'ho usato solo a scopo didattico (progetto di una base di dati,maschere,ecc...) per cui mi trovavo nella situazione di chi deve imparare la logica del linguaggio in maniera abbastanza approfondita,avendo già competenze di C e Java (benchè la programmazione a oggetti non c'entrasse minimamente) e devo dire che,senza un simile supporto,a guide on-line non ce l'avrei mai fatta.

Comunque ciascuno di noi è diverso e viene da esperienze diverse;c'e' chi si trova meglio in un modo,chi in un altro.Per la serie:il mondo è bello perchè è vario... ;)

Bye