لقد تم عمل سكربت لرفع الملفات
قاعدة البيانات
كود PHP:
CREATE TABLE `files` ( `id` INT UNSIGNED NOT NULL AUTO_INCREMENT ,
`filename` VARCHAR( 255 ) NOT NULL ,
`filesize` INT NOT NULL ,
`filetype` VARCHAR( 255 ) NOT NULL ,
`filedata` BLOB NOT NULL ,
PRIMARY KEY ( `id` )
);
كود رفع الملفات
كود PHP:
<?
mysql_connect("localhost", "root", "");
mysql_select_db("alkhor");
if($_FILES['filedata']['tmp_name'] != "")
{
$fileName = $_FILES['filedata']['name'];
$tmpName = $_FILES['filedata']['tmp_name'];
$fileSize = $_FILES['filedata']['size'];
$fileType = $_FILES['filedata']['type'];
$fo = @fopen($tmpName, "r");
$data = @fread($fo, filesize($tmpName));
$data = addslashes($data);
}
$result = @mysql_query("INSERT INTO `files` VALUES ('', '$fileName', '$fileSize', '$fileType', '$data')");
if($result)
{
$q=mysql_query("SELECT * FROM files ORDER BY id DESC LIMIT 1");
$rows=mysql_fetch_array($q);
echo "<META HTTP-EQUIV='refresh' CONTENT='0; URL=test.php?id=". $rows['id'] ."'>";
}
else
{
echo mysql_error();
}
?>
بعد الرفع يرسل id الى صفحة فحص الملف test.php
و لكن يرسل id و لا يفحص الملف اظن ان الخطاء في هذه الصفحة
مع العلم الحقل الذي يرفع علية الملف هو حقل filedata
كود PHP:
<?php
$host="localhost"; // Host name
$username="root"; // MySQL username
$password=""; // MySQL password
$db_name="alkhor"; // DataBase name
$tbl_name="files"; // Table name
// Connect to server and select database.
mysql_connect("$host", "$username", "$password")or die("cannot connect");
mysql_select_db("$db_name")or die("cannot select DB");
// get value of id that sent from Address bar
$id=$_GET['id'];
// Retrieve data from DataBase
$sql="SELECT * FROM $tbl_name WHERE id='$id'";
$result=mysql_query($sql);
$rows=mysql_fetch_array($result);
function fileread($file)
{
$tarray=array();
$id=$_GET['id'];
while ( $line = $rows['filedata']($id, 1000) ) {
$tarray[]= $line;
}
//
//
$tdouble=array();
for($i=0;$i<count($tarray)-1;$i++)
{
for($j=$i+1;$j<count($tarray);$j++)
{
if(trim($tarray[$i])==trim($tarray[$j])) {$tdouble[] =$tarray[$i];}//$tdouble[] =$tarray[$i];
}
}
echo "RESULT<br>";
foreach(array_unique($tdouble) as $value)
{
echo $value."<br>";
}
/*
echo "BEFORE<br>";
foreach($tarray as $value){
echo $value."<br>";
}
echo "AFTER<br>";
$newarray=array_unique ($tarray);
foreach($newarray as $value){
echo $value."<br>";
}
*/
}
//
?>
ارجو المساعدة