|
|
|
|
<?
ini_set('display_errors', 1);
error_reporting(E_ALL);
include_once('db.php');
function HaveFile($image_url){
$ch = curl_init();
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt ($ch, CURLOPT_URL, $image_url);
curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, 20);
curl_setopt ($ch, CURLOPT_USERAGENT, $_SERVER['HTTP_USER_AGENT']);
curl_setopt ($ch, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($ch, CURLOPT_HEADER, true);
curl_setopt($ch, CURLOPT_NOBODY, true);
$content = curl_exec ($ch);
$contentType = curl_getinfo($ch, CURLINFO_CONTENT_TYPE);
$retcode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
// $retcode > 400 -> not found, $retcode = 200, found.
if ($retcode == 404 && $contentType =='text/html') {
curl_close($ch);
return false;
} else {
curl_close($ch);
return true;}
}
function getExtension4($filename) {
return substr(strrchr($filename, '.'), 1);
}
function LoadIMage() {
mysql_data_seek($select_images, 0);
$select_images = mysql_query('SELECT image_tmp,listid FROM images WHERE status_new = 4 ORDER BY listid DESC LIMIT 0,1');
if (mysql_num_rows($select_images)>0){
$name = mt_rand(0, 1000);
$row = mysql_fetch_array($select_images);
if (HaveFile($row['image_tmp']) == true ) {
if (file_put_contents('images/'.$name.'_'.$row['listid'].'.'.getExtension4($row['image_tmp']), @file_get_contents($row['image_tmp']))) {
$db = mysql_query('UPDATE images set status_new=1, fname = "'.$name.'_'.$row['listid'].'.'.getExtension4($row['image_tmp']).'" WHERE id="'.$row['id'].'"');
LoadIMage();
}
} else {
$db = mysql_query('UPDATE images set status_new=3 WHERE id="'.$row['id'].'"');
}
} else { echo 'None files status 0';}
}
LoadIMage();
?>
|
Работает предельно до бесконечности, при этом грузит файл на сервер один и тот же по размеру - но имена задает разные. Не могу понять в чем проблема | |
|
|
|
|
|
|
|
для: OLi
(03.01.2013 в 16:55)
| | Собственно, задача в чем? | |
|
|
|
|
|
|
|
для: OLi
(03.01.2013 в 16:55)
| | потому что имя файла формируется рандомно, как я понимаю
<?php
$name = mt_rand(0, 1000);
|
| |
|
|
|