Tuatj Bedzie moj urs php
Upload plików na serwer za w PHP
•6 kwietnia, 2007 • Dodaj komentarzshow_source(‚
<?php
echo ”
<form action=”?” method=”POST” ENCTYPE=”multipart/form-data”>
<input type=”file” name=”plik”/><br/>
<input type=”submit” value=”Wyślij plik”/>
</form>
„;
$max_rozmiar = 1024*1024;
if (is_uploaded_file($_FILES[‚plik’][‚tmp_name’])) {
if ($_FILES[‚plik’][‚size’] > $max_rozmiar) {
echo ‚Błąd! Plik jest za duży!’;
} else {
echo ‚Odebrano plik. Początkowa nazwa: ‚.$_FILES[‚plik’][‚name’];
echo ‚<br/>’;
if (isset($_FILES[‚plik’][‚type’])) {
echo ‚Typ: ‚.$_FILES[‚plik’][‚type’].'<br/>’;
}
move_uploaded_file($_FILES[‚plik’][‚tmp_name’],
$_SERVER[‚DOCUMENT_ROOT’].’/foto/’.$_FILES[‚plik’][‚name’]);
}
} else {
echo ‚Błąd przy przesyłaniu danych!’;
}
?>
‚);
Prosty licznik odwiedzin
•5 kwietnia, 2007 • 3 KomentarzeLicznik tekstowy odporny na odświeżanie
Teraz pokażę, jak zmodyfikować licznik z poprzedniego rozdziału, aby nie naliczał kolejnych wejść tego samego użytkownika: <?
setcookie(„visited”, „1”, time()+3600*3);
/* wysyła cookie na komputer użytkownika */
?>
<HTML>
<BODY>
<?
if(file_exists(„counter.n”))
{ /* sprawdza, czy plik istnieje */
$file=fopen(„counter.n”, „r”); /* otwiera plik */
flock($file, 1); /* blokuje plik */
$ile=fgets($file, 100); /* odczytuje wartość */
flock($file, 3); /* odblokowuje plik */
fclose($file); /* zamyka plik */
if($visited!=”1″) /* sprawdza, czy
użytkownik już odwiedzał stronę */
{
$ile++; /* zwiększa wartość
o 1 tylko po pierwszym wejściu */
}
}
else
{
$ile=1; /* jeśli plik nie istnieje, wyświetli się 1 */
}
$file=fopen(„counter.n”, „w”); /* otwiera plik do zapisu */
flock($file, 2); /* blokuje do zapisu */
fwrite($file, $ile); /* zapisuje wartość */
flock($file, 3); /* odblokowuje plik */
fclose($file); /* zamyka plik */
echo($ile); /* wyświetla wartość */
?>
</BODY>
</HTML>
Skrypt wysyła do użytkownika cookie. Następnie zwiększa licznik tylko jeżeli wartość cookie nie jest równa „1”.
Funkcja time() użyta w 3 parametrze funkcji setcookie zwraca aktualny czas, liczony w sekundach od 1 stycznie 1970 roku.