Pagina 1 din 1
Functie pentru script upload[Simplu]
Scris: Vin Apr 16, 2010
de claUdiu
Buna , oare scriptul de upload de pe site[cel simplu] poate avea o functie?? . De ex cand cineva uploadeaza sa scrie intrun fisier .txt ipul celui care a uploadat+fisierul care lo uploadat. Daca exista va rog spunetimi cum e
thX
Functie pentru script upload[Simplu]
Scris: Sâm Apr 17, 2010
de MarPlo
Ii poti adauga o functie, trebuie sa o faci in script, la inceput. Cam asa:
Cod: Selectaţi tot
function add_ip() {
$file = 'fisier.txt';
$ip=$_SERVER['REMOTE_ADDR'];
$date = file_get_contents($file); // Preia continutul fisierului
$date .= "\r\n $ip"; // Adauga si ip-ul curent
file_put_contents($file, $date); // Adauga continutul din $date in $file
}
Apoi cand face upload, in acel loc apelezi functia
add_ip()
Functie pentru script upload[Simplu]
Scris: Sâm Apr 17, 2010
de claUdiu
Unde mai exact la inceput??
Eu am fkt asa:
Am creat fisierul fisier.txt
si am adaugat la inceputul codului asa:
Cod: Selectaţi tot
<?php
// Script de la https://marplo.net/php-mysql/ (Transfera fisiere pe server)
// 1. Creati intai directorul cu numele 'upload' (in acelasi director cu pagina dv. de upload) in care se vor copia fisierele
// 2. Acordati directorului 'upload' permisiuni CHMOD 0777
// 3. introduceti tot acest cod intr-un fisier .php
// Aici puteti modifica numele directorului de upload (daca ati pus alt nume)
function add_ip() {
$file = 'fisier.txt';
$ip=$_SERVER['REMOTE_ADDR'];
$date = = file_get_contents($file); // Preia continutul fisierului
$date .= "\r\n $ip"; // Adauga si ip-ul curent
file_put_contents($file, $date); // Adauga continutul din $date in $file
}
$uploadpath = "upload/";
// Aici este setata marimea maxima, in KiloBytes, care este permisa (dar marime maxima depinde si de setarile serverului)
$max_size = 2000;
// Aici puteti schimba tipul, extensia fisierelor permise pt. upload
$allowtype = array('bmp', 'flv', 'gif', 'jpg', 'jpeg', 'mp3', 'pdf', 'png', 'rar', 'zip');
if(isset($_POST['submit'])) {
if (isset ($_FILES['fisiere'])) {
$uploadpath = $uploadpath . basename( $_FILES['fisiere']['name']);
$type = end(explode(".", strtolower($_FILES['fisiere']['name'])));
// Daca fisierul are extensia permisa
if (in_array($type, $allowtype)) {
// Verifica daca fisierul are marimea permisa
if ($_FILES['fisiere']['size']<=$max_size*1000) {
if(move_uploaded_file($_FILES['fisiere']['tmp_name'], $uploadpath)) {
echo "Fisierul:<b> ". basename( $_FILES['fisiere']['name']). "</b> a fost incarcat cu succes:";
echo "<br />Tipul fisieului:<b> ". $_FILES['fisiere']['type'] ."</b>";
echo "<br />Marime (<i>in Bytes</i>): <b>". $_FILES['fisiere']['size'] ."</b><br /><br />";
echo 'Link catre fisierul incarcat: <b>http://'.$_SERVER['HTTP_HOST'].dirname($_SERVER['REQUEST_URI']).'/'.$uploadpath.'</b>';
}
else {
echo "<b>A aparut o eroare la urcarea fisierului pe server, <br /> posibil ca marimea fisierului sa depaseasca permisiunile setate de server.</b>";
}
}
else { echo 'Fisierul <b>'. $_FILES['fisiere']['name']. '</b> depaseste marimea permisa de maxim <i><b>'. $max_size. 'KB</b></i>'; }
}
else { echo 'Fisierul <b>'. $_FILES['fisiere']['name']. '</b> nu are tipul de extensie permis'; }
}
}
?>
Si cand uploadez imi da erroare urmatoare :
Cod: Selectaţi tot
Parse error: syntax error, unexpected '=' in /home/hosting/gamestim/functie_upload/rezultat.php on line 6
ce poate avea?:(
Functie pentru script upload[Simplu]
Scris: Sâm Apr 17, 2010
de MarPlo
Era o eroare de sintaxa.
Incearca script-ul asa (fisierull .txt trebuie sa aibe permisiuni CHMOD 0777):
Cod: Selectaţi tot
<?php
// Script de la https://marplo.net/php-mysql/ (Transfera fisiere pe server)
// 1. Creati intai directorul cu numele 'upload' (in acelasi director cu pagina dv. de upload) in care se vor copia fisierele
// 2. Acordati directorului 'upload' permisiuni CHMOD 0777
// 3. introduceti tot acest cod intr-un fisier .php
// Aici puteti modifica numele directorului de upload (daca ati pus alt nume)
$uploadpath = "upload/";
function add_ip() {
$file = 'fisier.txt';
$ip = $_SERVER['REMOTE_ADDR'];
$date = file_get_contents($file); // Preia continutul fisierului
$date .= "\r\n $ip"; // Adauga si ip-ul curent
file_put_contents($file, $date); // Adauga continutul din $date in $file
}
// Aici este setata marimea maxima, in KiloBytes, care este permisa (dar marime maxima depinde si de setarile serverului)
$max_size = 2000;
// Aici puteti schimba tipul, extensia fisierelor permise pt. upload
$allowtype = array('bmp', 'flv', 'gif', 'jpg', 'jpeg', 'mp3', 'pdf', 'png', 'rar', 'zip');
if(isset($_POST['submit'])) {
if (isset ($_FILES['fisiere'])) {
$uploadpath = $uploadpath . basename( $_FILES['fisiere']['name']);
$type = end(explode(".", strtolower($_FILES['fisiere']['name'])));
// Daca fisierul are extensia permisa
if (in_array($type, $allowtype)) {
// Verifica daca fisierul are marimea permisa
if ($_FILES['fisiere']['size']<=$max_size*1000) {
if(move_uploaded_file($_FILES['fisiere']['tmp_name'], $uploadpath)) {
add_ip(); // Apeleaza functia add_ip()
echo "Fisierul:<b> ". basename( $_FILES['fisiere']['name']). "</b> a fost incarcat cu succes:";
echo "<br />Tipul fisieului:<b> ". $_FILES['fisiere']['type'] ."</b>";
echo "<br />Marime (<i>in Bytes</i>): <b>". $_FILES['fisiere']['size'] ."</b><br /><br />";
echo 'Link catre fisierul incarcat: <b>http://'.$_SERVER['HTTP_HOST'].dirname($_SERVER['REQUEST_URI']).'/'.$uploadpath.'</b>';
}
else {
echo "<b>A aparut o eroare la urcarea fisierului pe server, <br /> posibil ca marimea fisierului sa depaseasca permisiunile setate de server.</b>";
}
}
else { echo 'Fisierul <b>'. $_FILES['fisiere']['name']. '</b> depaseste marimea permisa de maxim <i><b>'. $max_size. 'KB</b></i>'; }
}
else { echo 'Fisierul <b>'. $_FILES['fisiere']['name']. '</b> nu are tipul de extensie permis'; }
}
}
?>
Functie pentru script upload[Simplu]
Scris: Sâm Apr 17, 2010
de claUdiu
Acuma merge , dar cum pot fke sa scrie in fisier.txt si fisierul care o fost uploadat de ipul x .?? thX
Functie pentru script upload[Simplu]
Scris: Sâm Apr 17, 2010
de MarPlo
Transferi numele fisierului ca parametru la functie, si in ea adaugi sa-l preia.
Alte lucruri in legatura cu acest script incearca sa le gasesti si singur rezolvarea. Poate te ajuta si lectiile din cursuri, daca le studiezi.
Cod: Selectaţi tot
<?php
// Script de la https://marplo.net/php-mysql/ (Transfera fisiere pe server)
// 1. Creati intai directorul cu numele 'upload' (in acelasi director cu pagina dv. de upload) in care se vor copia fisierele
// 2. Acordati directorului 'upload' permisiuni CHMOD 0777
// 3. introduceti tot acest cod intr-un fisier .php
// Aici puteti modifica numele directorului de upload (daca ati pus alt nume)
$uploadpath = "upload/";
function add_ip($f_up) {
$file = 'fisier.txt';
$ip = $_SERVER['REMOTE_ADDR'];
$date = file_get_contents($file); // Preia continutul fisierului
$date .= "\r\n". $ip. ' - '. $f_up; // Adauga si ip-ul curent cu numele fisierului
file_put_contents($file, $date); // Adauga continutul din $date in $file
}
// Aici este setata marimea maxima, in KiloBytes, care este permisa (dar marime maxima depinde si de setarile serverului)
$max_size = 2000;
// Aici puteti schimba tipul, extensia fisierelor permise pt. upload
$allowtype = array('bmp', 'flv', 'gif', 'jpg', 'jpeg', 'mp3', 'pdf', 'png', 'rar', 'zip');
if(isset($_POST['submit'])) {
if (isset ($_FILES['fisiere'])) {
$uploadpath = $uploadpath . basename( $_FILES['fisiere']['name']);
$type = end(explode(".", strtolower($_FILES['fisiere']['name'])));
// Daca fisierul are extensia permisa
if (in_array($type, $allowtype)) {
// Verifica daca fisierul are marimea permisa
if ($_FILES['fisiere']['size']<=$max_size*1000) {
if(move_uploaded_file($_FILES['fisiere']['tmp_name'], $uploadpath)) {
add_ip($_FILES['fisiere']['name']); // Apeleaza functia add_ip()
echo "Fisierul:<b> ". basename( $_FILES['fisiere']['name']). "</b> a fost incarcat cu succes:";
echo "<br />Tipul fisieului:<b> ". $_FILES['fisiere']['type'] ."</b>";
echo "<br />Marime (<i>in Bytes</i>): <b>". $_FILES['fisiere']['size'] ."</b><br /><br />";
echo 'Link catre fisierul incarcat: <b>http://'.$_SERVER['HTTP_HOST'].dirname($_SERVER['REQUEST_URI']).'/'.$uploadpath.'</b>';
}
else {
echo "<b>A aparut o eroare la urcarea fisierului pe server, <br /> posibil ca marimea fisierului sa depaseasca permisiunile setate de server.</b>";
}
}
else { echo 'Fisierul <b>'. $_FILES['fisiere']['name']. '</b> depaseste marimea permisa de maxim <i><b>'. $max_size. 'KB</b></i>'; }
}
else { echo 'Fisierul <b>'. $_FILES['fisiere']['name']. '</b> nu are tipul de extensie permis'; }
}
}
?>