tornallindice
Webberie

WebbIta'

Si realizzano siti web per: persone, scuole, comunità.

Se non vuoi perdere tempo in installazioni, configurazioni dei gruppi di utenti, aggiunta di funzionalità particolari (tipo mercatino o social network) possiamo consegnarti il lavoro in pochi giorni e anche continuare ad amministrare il tuo sito oppure affiancarti nel lavoro di amministrazione.
Se sei interessato oppure se hai semplicemente bisogno di consulenza scrivimi
tornallindice



PHP
- Scrivere in un file
Quando un sito deve essere aggiornato frequentemente allora diventa davvero seccante stare a manipolare continuamente il codice. Se poi si ha anche a che fare con una notevole quantità di dati allora il lavoro diventa veramente faticoso per una persona sola. Con PHP è estremamente semplice scrivere del codice che permette di scrivere su file e quindi di aggiornare pagine web senza manipolare il codice oppure di fare upload di files. Ovviamente questo è vero se si gestiscono siti senza grossi problemi di sicurezza (anche se con qualche accortezza.. ;)
Di seguito alcune indicazioni; ho realizzato le pagine su un server Win2K su cui girava PHP4.3.2.
Allora, cosa è necessario:
  • codice per scrivere su un file
  • codice per effettuare upload di files
  • un server web (ne puoi installare uno freeware sul tuo PC)
  • PHP troverai la versione per la tua piattaforma su www.php.net

Esempio
Queste linee di codice, con qualche aggiustamento o.c., dovranno essere salvate in un file .php (file1.php nell'esempio) e consentono di scrivere su un file (nell'esempio in spazio1.inc, file incluso in index.html). <?php
if ($fubmit) {
$f=fopen ("spazio1.inc","w");
fputs ($f,$commento);
fputs ($f,"<br>");
fclose ($f);
}
$f=fopen ("spazio1.inc","r");
while (!feof($f)) {
$l=fgetc ($f);
echo ($l);
}
fclose ($f);
?>
<form action="file1.php" method="get">
<p>Inserisci il testo nell'area, e poi fai clik sul pulsante "Invia" per pubblicarlo. </p>
<textarea name="commento" cols="25" rows="10"></textarea>
<input name="submit" type="submit" value="invia">
</form>
- Upload di file
Se l'obiettivo invece è fare upload di files.
Il codice a fianco invece consente di effettuare l'upload di file guidando l'utente nell'operazione. Il file viene scaricato sul server e, nella pagina 'indice.html', viene aggiunta una data e un link al file scaricato (..quindi si potrebbe realizzare anche una specie di Forum ;).
Ovviamente lo script è stato 'snellito' quindi, se non hai dimestichezza con PHP o con altri linguaggi di script ti consiglio di documentarti un po' prima di.. cimentarti; in rete troverai una marea di siti!
Lo script non controlla se il file esiste sul tuo HD, né se è troppo lungo o ha estensioni 'pericolose'. Sotto con le if dunque!
Buona fortuna :)
<?
$dl = ""; //aggiungi QUI l'indirizzo dove saranno scaricati i file
$absolute_path = ""; //aggiungi QUI l'Indirizzo assoluto della cartella in cui saranno scaricati
if (!isset($action)) {
$action = "";
}
switch($action) {
default:
echo"
<html>
<head>
<title>1 - </title>
</head>
<body>
<p>scrivi un messaggio per te o per l'utente che si colleghera' a questa pagina</p>
<a href=$PHP_SELF?action=upload>Vai Avanti</a>
</body>
</html>";
break;
case "upload":
echo"
<html>
<head>
<title>2 -</title>
</head>
<body>
<form method=POST action=$PHP_SELF?action=doupload enctype=multipart/form-data>
<p>File:
<input type=file name=file size=50><br><br>
Data:
<select name=gg>
<option value= selected>
<option value=01 >01
<option value=02 >02
......etc.........
</select>
<select name=mm>
<option value= selected>
<option value=gennaio >gen
<option value=febbraio >feb
......etc.........
</select>
<br><br>Titolo:
<input name=titolo size=120>
<br><br><button name=submit type=submit>
Upload
</button>
</form>
</body>
</html>";
break;
//Upload vero e proprio
case "doupload":
$dir = "dir";
if ($file != "") {
@copy($file, "$absolute_path/$file_name") or die("Il file che vuoi scaricare non puo' essere copiato sul server");
} else {
die("Devi selezionare un file!");
}
echo "
<html>
<head>
<title>File Pubblicato</title>
</head>
<body>";
echo $file_name." &egrave; stato scaricato con successo:";
$f=fopen ("indice.html","a+");
$li=" $gg $mm <a href=$file_name>$titolo</a>";
fputs ($f,$li);
fputs ($f,"<br>");
fclose ($f);
echo "<br>
</body>
</html>";
break;
}
?>
tornallindice