دوستان یکی دو روزه که دارم با این تابع کار می کنم ولی نتونستم متوجه بشم که مشکل کجاست. چندجا هم مطرح کردم ولی جوابی نگرفتم.
اینجا هم مطرح می کنم ببینم مشکل حل می شه یا نه.
توابع اصلی مخصوص ذخیره تصاویر در پایگاه داده:
کد های مربوط به ایجاد اتصال به پایگاه داده:
کد ایجاد جدول:
اینجا هم مطرح می کنم ببینم مشکل حل می شه یا نه.
توابع اصلی مخصوص ذخیره تصاویر در پایگاه داده:
PHP:
function ses_open()
{
global $cxn;
if($cxn)
{
return $cxn;
}
else
{
return false;
}
}
function ses_close()
{
global $cxn;
return mysqli_close($cxn);
}
function ses_read($id)
{
global $cxn;
$id = mysql_real_escape_string($id);
$sql = "SELECT data FROM sessions WHERE id = '$id'";
if ($result = db_query($cxn,$sql))
{
if (mysql_num_rows($result))
{
$record = mysql_fetch_assoc($result);
return $record['data'];
}
}
else
{
return '';
}
}
function ses_write($id, $data)
{
global $cxn;
$salt='unic_ses_string';
#$_ip=isset ($_SERVER['HTTP_CLIENT_IP'])?$_SERVER['HTTP_CLIENT_IP'] : "UNKNOWN";
#$_ip.=isset ($_SERVER['HTTP_X_FORWARDED_FOR'])?$_SERVER['HTTP_X_FORWARDED_FOR'] : "UNKNOWN";
#$_ip.=isset ($_SERVER['REMOTE_ADDR'])?$_SERVER['REMOTE_ADDR'] : 'UNKNOWN';
$_ip=isset ($_SERVER['REMOTE_ADDR'])?$_SERVER['REMOTE_ADDR'] : 'UNKNOWN';
$_agent = isset ($_SERVER['HTTP_USER_AGENT'])?$_SERVER['HTTP_USER_AGENT'] : 'NO USER AGENT';
$hash=sha1($salt.$_ip.$_agent);
$access = time();
$id = mysql_real_escape_string($id);
$access = mysql_real_escape_string($access);
$data = mysql_real_escape_string($data);
$sql="INSERT INTO sessions (id,data,access,hash) VALUES ($safe_id,$safe_data,'$now',$hash)
ON DUPLICATE KEY UPDATE data=$safe_data, access='$access',hash=$hash";
return db_query($cxn,$sql);
}
function ses_destroy($id)
{
global $cxn;
$id = mysql_real_escape_string($id);
$sql = "DELETE FROM sessions WHERE id = '$id'";
return db_query($cxn,$sql);
}
function ses_clean($max)
{
global $cxn;
$old = time() - $max;
$old = mysql_real_escape_string($old);
$sql = "DELETE FROM sessions WHERE access < '$old'";
return db_query($cxn,$sql);
}
session_set_save_handler('ses_open','ses_close','ses_read','ses_write','ses_destroy','ses_clean');
کد های مربوط به ایجاد اتصال به پایگاه داده:
PHP:
function db_connect()
{
global $cxn;
$cxn=mysqli_connect('localhost','user','852','test') or die ("امکان انجام درخواست شما وجود ندارد، لطفا مجددا تلاش کنيد");
return $cxn;
}
function db_query($cxn, $sql)
{
mysqli_set_charset($cxn, "utf8") or die("امکان انجام درخواست شما وجود ندارد، لطفا مجددا تلاش کنيد". mysqli_error($cxn));
$result = mysqli_query($cxn,$sql) or die("امکان انجام درخواست شما وجود ندارد، لطفا مجددا تلاش کنيد". mysqli_error($cxn));
return $result;
}
کد ایجاد جدول:
PHP:
CREATE TABLE IF NOT EXISTS `sessions` (
`id` varchar(100) COLLATE utf8_unicode_ci NOT NULL,
`data` text COLLATE utf8_unicode_ci NOT NULL,
`access` datetime NOT NULL,
`hash` char(40) COLLATE utf8_unicode_ci NOT NULL,
UNIQUE KEY `id` (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
آخرین ویرایش: