Функция за копиране на картинки от url

webdeveloper

Registered
Можете ли да ми дадете някаква функция с която като се напише url до картинката в текстово поле, тя да се копира в папка images на моя сървър с рандом име..?
 
Код:
function new_name($exp)
{
	$simbols = "1234567890qwertyuiopasdfgjklzxcvbnm";
	return substr(str_shuffle($simbols), 0, 10).".".$exp;
}

$name=new_name(adsfdas.jpg);

copy ("URL", "images/$name");



Заповядай!
 
Код:
<form method="POST" action="">
<input type="text" name="image" size="40">
<input type="submit" name="do">
</form>
<?php
if(isset($_POST['do'])){
$dir="files/"; //директорията
$image=$_POST['image'];
copy($image, $dir.$image);
}
?>
 
heminei каза:
Код:
function new_name($exp)
{
	$simbols = "1234567890qwertyuiopasdfgjklzxcvbnm";
	return substr(str_shuffle($simbols), 0, 10).".".$exp;
}

$name=new_name(adsfdas.jpg);

copy ("URL", "images/$name");



Заповядай!

Това $name=new_name(adsfdas.jpg); нещо не мога да го разбера...? :oops:
 
Ползва готов код (от негов сайт или пък не) , затова не го е направил като хората.
Това трябва да е името на картинката и да го сменя.
Но до колкото разбрах ти искаш просто да я сваля картинката , а не да я сваля с ново име.
За тази работа използвйа кода на @kriss ;)
 
Функцията new_name слага случайни цифри и букви пред името на файла!

А пък името на файла може да си го променяш каквото и да е (adsfdas.jpg)


Rезултата ще е : asd876asd8_adsfdas.jpg
 
Нещо не ми копира картинката, в php.ini има ли опция с която може да се включва/изключва функцията copy (може да съм я изключил и да съм забравил...)?
 
Какъв може да е проблема тогава, пътя правилно съм го задал..

Това съм сложил:
copy ("$oblojka", "images/albums_oblojki/$oblojka");

Като $oblojka е url адреса на картинката.
 
значи този код върти от една таблица ако имаш записани пътища до снимките на сървъра.

нещо от сорта http://saita.com/imeto-na-snimkata.jpg , върти полето image от таблица snimkite, отваря всяка снимка и я записва в папката images, съответно ако не искаш да записваш името на снимката в друга таблица, махни долната заявка която инсъртва.

За да стане тая цялата работа папката images трябва да е с пермишън 777

Код:
<?
$db = mysql_connect ("localhost","first_new","parola") or die ('greshka');
mysql_select_db("first_new",$db) or die ('baza');



ini_set("max_execution_time", "1000");

 $snimki = mysql_query("SELECT `image` FROM `snimkite`", $db) or die ('ne moje da gi izvle4e');
 
  while ($row = mysql_fetch_array($snimki)) {
	   
		$parent = $row['id']; 
		
		$str = ""; 
		$p = "";
		 
		if ( $row['image'] != "" ){
		$img = $row['image'];
		$ext = substr(strrchr($img,'.'),0);
 		$copydir = "images/";
 		$data = file_get_contents($img);
		$rand = rand(1111, 999999999);
                $rand2 = rand(111,999);
 		$str = $rand."_".md5($rand2).$ext;
 		$name = $copydir . $str;
 		$file = fopen($name, "w+");
 		fputs($file, $data);
 		fclose($file);

		mysql_query("INSERT INTO `images` (`parent`, `type`, `url`, `new_url`, `old_url`, `other`, `sort_order`) VALUES ('".$parent."', 'products', '".$str."', '".$p."', '".$p."', '".$p."', '0' )") or die ("id = ".mysql_insert_id().""); 
    }
	}

?>
 
webdeveloper каза:
Какъв може да е проблема тогава, пътя правилно съм го задал..

Това съм сложил:
copy ("$oblojka", "images/albums_oblojki/$oblojka");

Като $oblojka е url адреса на картинката.

Идеи?
 

Back
Горе