Cercasi esperto di php per script

Postate qui per tutte le discussioni legate a Linux in generale.

Moderatore: Staff

Regole del forum
1) Citare sempre la versione di Slackware usata, la versione del Kernel e magari anche la versione della libreria coinvolta. Questi dati aiutano le persone che possono rispondere.
2) Per evitare confusione prego inserire in questo forum solo topic che riguardano appunto Gnu/Linux in genere, se l'argomento è specifico alla Slackware usate uno dei forum Slackware o Slackware64.
3) Leggere attentamente le risposte ricevute
4) Scrivere i messaggi con il colore di default, evitare altri colori.
5) Scrivere in Italiano o in Inglese, se possibile grammaticalmente corretto, evitate stili di scrittura poco chiari, quindi nessuna abbreviazione tipo telegramma o scrittura stile SMS o CHAT.
6) Appena registrati è consigliato presentarsi nel forum dedicato.

La non osservanza delle regole porta a provvedimenti di vari tipo da parte dello staff, in particolare la non osservanza della regola 5 porta alla cancellazione del post e alla segnalazione dell'utente. In caso di recidività l'utente rischia il ban temporaneo.
samiel
Staff
Staff
Messaggi: 5511
Iscritto il: ven 16 gen 2004, 0:00
Nome Cognome: Mauro Sacchetto
Slackware: 13.0
Kernel: 2.26
Desktop: KDE
Distribuzione: anche Debian
Località: Venezia

Messaggio da samiel »

Ho visto, il manuale è amplissimo.
Certo, se si poteva scaricare in pdf era meglio...

Ho validato tutte le pagine del sito col
W3C Markup Validator: promosso!

Grazie ancora a tutti
M.

Avatar utente
aschenaz
Staff
Staff
Messaggi: 4623
Iscritto il: mer 28 lug 2004, 0:00
Nome Cognome: Nino
Slackware: current
Kernel: 5.4.x
Desktop: KDE
Località: Reggio Calabria
Contatta:

Messaggio da aschenaz »

Comunque, ad occhio e croce, su questa riga
<textarea name="messaggio" cols="50" rows="8">?> echo $message;<?</textarea>
hai invertito i marcatori di php:
?>...<? invece di <? ... ?>.

Inoltre, come ti hanno consigliato, è sempre preferibile usare <?php... ?>.

Ciao,
nino

samiel
Staff
Staff
Messaggi: 5511
Iscritto il: ven 16 gen 2004, 0:00
Nome Cognome: Mauro Sacchetto
Slackware: 13.0
Kernel: 2.26
Desktop: KDE
Distribuzione: anche Debian
Località: Venezia

Messaggio da samiel »

Lo so, avevo fatto un brutto pasticcio.
Ora tutto sistemato... non resta che capire bene
codice funzionante ed errori. Ma, come già detto,
sto cercando di affinare un po' il mio barcollante
xhtml e css. Poi passo al PHP, che mi pare
decisamente più impegnativo.

Grazie
M.

Avatar utente
aschenaz
Staff
Staff
Messaggi: 4623
Iscritto il: mer 28 lug 2004, 0:00
Nome Cognome: Nino
Slackware: current
Kernel: 5.4.x
Desktop: KDE
Località: Reggio Calabria
Contatta:

Messaggio da aschenaz »

samiel ha scritto:...sto cercando di affinare un po' il mio barcollante
xhtml e css...
Questo tutorial lo hai letto?
Scherzo, naturalmente: è decisamente elementare (tu sarai miglia più avanti!). :D
Poi passo al PHP, che mi pare
decisamente più impegnativo...
Può risultare impegnativo all'inizio, ma poi diventerà la tua passione!
Il php è una meraviglia e (IMHO) decisamente molto più flessibile di altri linguaggi di programmazione.
Per esempio, guarda in quanti modi puoi costruire una condizione if-else (e ce ne saranno altri...):

Codice: Seleziona tutto

<?php
$test=0;

# Primo metodo

if($test==1) {
	echo "1 - Test superato<br>";
} else {
	echo "1 - Test fallito<br>";
}
# Naturalmente, sarebbe bastato un if($test)
# come nell'esempio seguente...

# Secondo metodo

if($test) echo "2 - Test superato<br>";
else echo "2 - Test fallito<br>";

# Terzo metodo

$test ? print("3 - Test superato<br>") : print("3 - Test fallito<br>");

# Quarto metodo (il mio preferito perché più breve di tutti :) )

echo $test ? "4 - Test superato<br>" : "4 - Test fallito<br>";

?>
Nelle prime stesure, addirittura, non era neanche necessario dichiarare le variabili (o procedere ad una preventiva assegnazione) e ogni variabile diventava automaticamente globale...
In quel modo, però, era un vero colabrodo! :lol:

Ciao,
nino

Avatar utente
Paoletta
Staff
Staff
Messaggi: 3975
Iscritto il: lun 25 apr 2005, 0:00
Slackware: 14.2 - 64 bit
Desktop: fluxbox
Località: Varese

Messaggio da Paoletta »

Per esempio, guarda in quanti modi puoi costruire una condizione if-else
beh, sono tutti modi che puoi usare tranquillamente anche in C e java

Avatar utente
aschenaz
Staff
Staff
Messaggi: 4623
Iscritto il: mer 28 lug 2004, 0:00
Nome Cognome: Nino
Slackware: current
Kernel: 5.4.x
Desktop: KDE
Località: Reggio Calabria
Contatta:

Messaggio da aschenaz »

Paoletta ha scritto:
Per esempio, guarda in quanti modi puoi costruire una condizione if-else
beh, sono tutti modi che puoi usare tranquillamente anche in C e java
Prova a farlo in Pascal... :)

Vabbè, io ho fatto l'esempio di if, ma C (di cui, sinceramente, ho solo un'infarinatura) é generalmente molto più rigido ed esoso (in termini di byte di codice) rispetto a php.

Java non lo conosco affatto. Anzi, per essere precisi, ho letto la prima pagina di un manuale e l'ho fatto subito volare. Non ho più l'età per certe cose! :lol:

Ciao,
nino

Avatar utente
DaD
Linux 2.x
Linux 2.x
Messaggi: 371
Iscritto il: mer 7 feb 2007, 18:19
Nome Cognome: Antonio Barra
Slackware: 13
Kernel: 3.0
Desktop: KDE 4
Distribuzione: Mac OS X
Contatta:

Messaggio da DaD »

Sarò all'antica ma a me l'if piace nella forma base :lol:
comunque il php secondo me è il linguaggio per eccelenza se vuoi programmare per il web (e non solo a dirla tutta :P phpgtk rulez!!) quindi ti tocca impararlo per bene mi sa.
Se ti servisse una mano io in chan ci sono spesso quindi un aiuto te lo do volentieri (se posso naturalmente :lol:).

Avatar utente
aschenaz
Staff
Staff
Messaggi: 4623
Iscritto il: mer 28 lug 2004, 0:00
Nome Cognome: Nino
Slackware: current
Kernel: 5.4.x
Desktop: KDE
Località: Reggio Calabria
Contatta:

Messaggio da aschenaz »

Comunque sia, il php, per la sintassi dei costrutti, prende molto dal c e dal perl.

Per tornare IT:

Samiel, una versione in pdf del manuale (anche se di qualche anno fa) dovrei avercela in ufficio (domani guardo e in caso te la mando). Comunque, mi pare che siano oltre 4000 pagine: io mi stampavo un capitolo alla volta e non li ho stampati certo tutti (ci sono aspetti del php che penso non toccherò mai, è veramente immenso...).

Un'altra cosa: io ti consiglio di studiarlo in inglese. A parte il fatto che, nella versione italiana, l'ordinamento alfabetico viene ad essere stravolto, certe cose si assimilano molto meglio in inglese.

Ciao,
nino

Avatar utente
albatros
Iper Master
Iper Master
Messaggi: 2098
Iscritto il: sab 4 feb 2006, 13:59
Kernel: 6.18.0
Desktop: gnome and lxqt
Distribuzione: Ubuntu 24.04 & FC 41
Località: Darmstadt - Germania

Messaggio da albatros »

ninobi ha scritto:Vabbè, io ho fatto l'esempio di if, ma C (di cui, sinceramente, ho solo un'infarinatura) é generalmente molto più rigido ed esoso (in termini di byte di codice) rispetto a php.
Beh, il C è nato in altro contesto e per altri scopi, prova a scrivere un sistema operativo, un driver o a fare simulazioni numeriche in php... Lo stesso interprete php è scritto in C e senza interprete un programma in php non funziona, mentre un programma in C, una volta compilato, non ha più bisogno del compilatore...
php funziona benissimo per la formattazione di pagine web dinamiche e si può usare anche per script da eseguire in locala, perché no, con php-pear si hanno molte funzioni pronte all'uso per creare agevolmente piccole utility, ma, come ogni altro linguaggio, ha un suo ambito d'azione più o meno vasto, ai cui confini iniziano già a diventare più competitivi altri linguaggi (magari interpretati, come. perl o python, che non mi sembrano meno flessibili di php).
Ognuno può avere le preferenze che vuole circa la bellezza e la praticità della sintassi di un linguaggio, ma non si dovrebbe dimenticare che stiamo parlando di strumenti destinati a scopi diversi, è come parlare di una moto, di una barca o di un aereo: tutti servono per spostarsi, ma ogni mezzo ha il suo ambiente di utilizzo al di fuori del quale può essere sconveniente o addirittura impossibile l'uso...
Ho espresso per esteso questa considerazione, ma credo che anche tu sia già d'accordo... :)

Avatar utente
aschenaz
Staff
Staff
Messaggi: 4623
Iscritto il: mer 28 lug 2004, 0:00
Nome Cognome: Nino
Slackware: current
Kernel: 5.4.x
Desktop: KDE
Località: Reggio Calabria
Contatta:

Messaggio da aschenaz »

albatros ha scritto:
ninobi ha scritto:Vabbè, io ho fatto l'esempio di if, ma C (di cui, sinceramente, ho solo un'infarinatura) é generalmente molto più rigido ed esoso (in termini di byte di codice) rispetto a php.
Beh, il C è nato in altro contesto e per altri scopi, prova a scrivere un sistema operativo, un driver o a fare simulazioni numeriche in php... Lo stesso interprete php è scritto in C e senza interprete php non funziona, mentre un programma in C, una volta compilato, non ha più bisogno del compilatore...
php funziona benissimo per la formattazione di pagine web dinamiche e si può usare anche per script da eseguire in locala, perché no, con php-pear si hanno molte funzioni pronte all'uso per creare agevolmente piccole utility, ma, come ogni altro linguaggio, ha un suo ambito d'azione più o meno vasto, ai cui confini iniziano già a diventare più competitivi altri linguaggi (magari interpretati, come. perl o python, che non mi sembrano meno flessibili di php).
Ognuno può avere le preferenze che vuole circa la bellezza e la praticità della sintassi di un linguaggio, ma non si dovrebbe dimenticare che stiamo parlando di strumenti destinati a scopi diversi, è come parlare di una moto, di una barca o di un aereo: tutti servono per spostarsi, ma ogni mezzo ha il suo ambiente di utilizzo al di fuori del quale può essere sconveniente o addirittura impossibile l'uso... :)
Nulla da eccepire.

Io non intendevo fare confronti strumentali tra i vari linguaggi. Mi guarderei bene dallo sminuire il c, in particolare, sapendo che è il linguaggio con cui, praticamente, è scritto l'intero sistema operativo. Oltretutto, io sono ignorante come una capra a questo proposito... :lol:

Io mi riferivo semplicemente alla perplessità, manifestata da samiel, in merito all'essere impegnativo del php. Ho espresso la mia convinzione personale che sia molto meno impegnativo assimilarlo rispetto ad altri linguaggi di programmazione e che offra una grande flessibilità di sintassi. Ecco tutto.

Anche il Python è bellissimo come linguaggio ed ha una sintassi veramente intrigante (mi piace molto, in particolare, l'uso dell'indentazione per delimitare i costrutti). Ma come flessibilità (sempre in merito alla sintassi), credo che php sia superiore...

samiel
Staff
Staff
Messaggi: 5511
Iscritto il: ven 16 gen 2004, 0:00
Nome Cognome: Mauro Sacchetto
Slackware: 13.0
Kernel: 2.26
Desktop: KDE
Distribuzione: anche Debian
Località: Venezia

Messaggio da samiel »

Questo tutorial lo hai letto?
Scherzo, naturalmente: è decisamente elementare (tu sarai miglia più avanti!).
Sì, quelle cose le so tranne la parte sull'accessibilità.
Dai delle ottime basi per affrontare quel tema.

4000 pagine di manuale?
Madòòòòòòòòòòòòòòòòòòòòòò
Ma dove hai trovato il pdf?

Quanto ai vari linguaggi, ragà... Ho iniziato con LaTeX.
adesso siamo all'Xhtml, poi passerò appunto
a PhP perché mi interessa e mi serve.
Fra l'altro, nella mia scuola vogliono farmi
referente per l'informatica e il sito...
Poi... chissà... non è che voglio fare il programmatore...

M.

samiel
Staff
Staff
Messaggi: 5511
Iscritto il: ven 16 gen 2004, 0:00
Nome Cognome: Mauro Sacchetto
Slackware: 13.0
Kernel: 2.26
Desktop: KDE
Distribuzione: anche Debian
Località: Venezia

Messaggio da samiel »

Colgo la palla al balzo per sottoporvi un altro problemino.
Se compio la verifica di validazione sull'apposito form del W3C
inserendo a mano il file o il link in locale, fila tutto liscio.
Se invece posto l'url della pagina già presente in rete,
ricevo questo Warning:

=================================================
Important Warnings

The validator has found the following problem(s) prior to validation,
which should be addressed in priority:

1. Warning Character Encoding mismatch!

The character encoding specified in the HTTP header (iso-8859-1)
is different from the value in the XML declaration (utf-8).
I will use the value from the HTTP header (iso-8859-1).
=================================================

Come si spiega questa differenza?
Grazie
M.

Avatar utente
aschenaz
Staff
Staff
Messaggi: 4623
Iscritto il: mer 28 lug 2004, 0:00
Nome Cognome: Nino
Slackware: current
Kernel: 5.4.x
Desktop: KDE
Località: Reggio Calabria
Contatta:

Messaggio da aschenaz »

Per il manuale php, guarda la posta.

In merito al problema della validazione, tenuto conto che i warnings potrebbero anche essere ignorati (l'importante è che non ci siano errori), è comunque dovuto ad un disallineamento tra la definizione del charset dell'intestazione e quella della dichiarazione xml.

La cosa dipende dalle impostazioni del server. Teoricamente, si dovrebbe modificare l'httpd.conf aggiungendo il charset (nel caso documentati, io andrei a tentoni). Oppure dovresti inserire un file .htaccess nella DocumentRoot con questa stringa:

Codice: Seleziona tutto

AddDefaultCharset Off
Ma siccome per fare questo, dovresti rivolgerti all'hosting (e non è detto che accettino), puoi ovviare, secondo me, togliendo la dichiarazione xml (non è indispensabile) e aggiungendo il charset in un meta-tag.
Ad sempio, in un sito io ho:

Codice: Seleziona tutto

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
    "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="it">
<head>
	<meta http-equiv="content-type" content="text/html;charset=iso-8859-1" />
...
</head>
e non ho il warning.

Se invece modifico il meta a iso-8859-15 (che aggiunge il simbolo dell'euro), mi dà il disallineamento.

Ciao,
nino

samiel
Staff
Staff
Messaggi: 5511
Iscritto il: ven 16 gen 2004, 0:00
Nome Cognome: Mauro Sacchetto
Slackware: 13.0
Kernel: 2.26
Desktop: KDE
Distribuzione: anche Debian
Località: Venezia

Messaggio da samiel »

Grazie mille, il malloppone è arrivato!
Ci vorrà na vita per studiarlo...

Il meta-tag
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
lo avevo inserito in ogni caso,
ma il tuo suggerimento sul file .htaccess
funziona perfettamente. L'ho creato e caricato,
senza dire niente a nessuno :-)

Mille grazie per il manualone
e la risolutiva consulenza

M.

Avatar utente
aschenaz
Staff
Staff
Messaggi: 4623
Iscritto il: mer 28 lug 2004, 0:00
Nome Cognome: Nino
Slackware: current
Kernel: 5.4.x
Desktop: KDE
Località: Reggio Calabria
Contatta:

Messaggio da aschenaz »

Molto lieto di esserti stato un po' utile. :D

Io opterei meglio per l'iso-8859-1 (o iso-8859-15).

Ehi, per tornare al discorso sulla flessibilità di php (solo per completezza)...
ninobi ha scritto:Per esempio, guarda in quanti modi puoi costruire una condizione if-else (e ce ne saranno altri...):
...dimenticavo un altro metodo, che uso spesso quando devo condizionare grossi blocchi di codice:

Codice: Seleziona tutto

# Quinto metodo

if($test):
      echo "Test superato<br>";
else:
      echo "Test fallito<br>";
endif;

Rispondi