Качване на 6 снимки с оразмеряване?

nom3r1

Registered
Играх си си малко, но нещо не ми се получава кода. Искам като качва снимките да създава thumbnail снимки в small папката, но да прави и проверка дали всичко е наред. Кода в момента ми изглежда така, но не създава снимките, от къде може да идва проблема?


Код:
	 <?php
include ("config.php");
echo "<form method=\"POST\" enctype=\"multipart/form-data\">
Име: <input type=\"text\" name=\"name\" size=\"63\" MAXLENGTH=\"40\" MOLANG=\"DEFAULT\"><br>
<select name='gr_pol' id='gr_pol'>
<option selected='selected'>----</option>
<option value='M'>мъж</option>
<option value='F'>жена</option>
</select><br />
Snimka1: <input type=\"file\" name=\"pic1\"><br>
Snimka2: <input type=\"file\" name=\"pic2\"><br>
Snimka3: <input type=\"file\" name=\"pic3\"><br>
Snimka4: <input type=\"file\" name=\"pic4\"><br>
Snimka5: <input type=\"file\" name=\"pic5\"><br>
Snimka6: <input type=\"file\" name=\"pic6\"><br><br>
<input type=\"submit\" name=\"submit\" value=\"запиши\"><br>
</form>";

if (isset($_POST['submit'])){
$gr_name = htmlspecialchars($_POST['name']);
$gr_pol = htmlspecialchars($_POST['gr_pol']);
$pic1 = $_FILES['pic1']['name'];
$pic2 = $_FILES['pic2']['name'];
$pic3 = $_FILES['pic3']['name'];
$pic4 = $_FILES['pic4']['name'];
$pic5 = $_FILES['pic5']['name'];
$pic6 = $_FILES['pic6']['name'];
if (isset($pic1) and !empty($pic1) and isset($pic2) and !empty($pic2) and isset($pic3) and !empty($pic3) and isset($pic4) and !empty($pic4) and isset($pic5) and !empty($pic5) and isset($pic6) and !empty($pic6)){
if (isset($gr_name) and !empty($gr_name)){
for ($i = 1; $i <= 6; $i++){
$a = $_FILES['pic'.$i.'']['name'];
$b = explode(".",$a);
$c = count($b);
$d = $b[$c-1];
$e = array("JPG","JPEG","jpg","jpg");
if (in_array($d,$e)){
$path = "img/$gr_pol/";
$datename = date("YmdHis"); //2010/09/01 24:00:00
${name.$i} = $datename."_".$gr_name."_"."pic"."_".$i.".".$d;
move_uploaded_file($_FILES['pic'.$i.'']["tmp_name"], $path.${name.$i});

///////// Start the thumbnail generation//////////////
	$n_width = 160;
	$n_height = 131;
	$tsrc = "img/$gr_pol/small/".$_FILES['pic'.$i.'']['tmp_name'].${name.$i};
		if($_FILES[userfile][type]=="image/pjpeg"){
			$im = ImageCreateFromJPEG($add);
			$width = ImageSx($im);
			$height = ImageSy($im);
			$newimage = imagecreatetruecolor($n_width,$n_height);                 
			imageCopyResized($newimage,$im,0,0,0,0,$n_width,$n_height,$width,$height);
			ImageJpeg($newimage,$tsrc);
		}
echo "Снимка $i е качена.<br>";
}
else{
echo "Снимка $i използва неразрешен формат!";
}
}
$ip = $_SERVER['REMOTE_ADDR'];
$q = mysql_query("INSERT INTO zaqvka (gr_name, picture1, picture2, picture3, picture4, picture5, picture6, ip) VALUES('$gr_name','$name1','$name2','$name3','$name4','$name5','$name6','$ip')") or die(mysql_error());
echo '
Вашата заявка за участие е приета и записана.<br /><br />
Вашият профил ще бъде активиран от началото на следващият месец, ако отговаря на условията на конкурса.</center><br /><br />!';
}
else{
echo "Трябва да въведете Име!";
}}
else{
echo "Снимките са по-малко от 6!";
}}
?>
 
nom3r1 каза:
Играх си си малко, но нещо не ми се получава кода. Искам като качва снимките да създава thumbnail снимки в small папката, но да прави и проверка дали всичко е наред. Кода в момента ми изглежда така, но не създава снимките, от къде може да идва проблема?


Код:
	 <?php
include ("config.php");
echo "<form method="POST" enctype="multipart/form-data">
Име: <input type="text" name="name" size="63" MAXLENGTH="40" MOLANG="DEFAULT"><br>
<select name='gr_pol' id='gr_pol'>
<option selected='selected'>----</option>
<option value='M'>мъж</option>
<option value='F'>жена</option>
</select><br />
Snimka1: <input type="file" name="pic1"><br>
Snimka2: <input type="file" name="pic2"><br>
Snimka3: <input type="file" name="pic3"><br>
Snimka4: <input type="file" name="pic4"><br>
Snimka5: <input type="file" name="pic5"><br>
Snimka6: <input type="file" name="pic6"><br><br>
<input type="submit" name="submit" value="запиши"><br>
</form>";

if (isset($_POST['submit'])){
$gr_name = htmlspecialchars($_POST['name']);
$gr_pol = htmlspecialchars($_POST['gr_pol']);
$pic1 = $_FILES['pic1']['name'];
$pic2 = $_FILES['pic2']['name'];
$pic3 = $_FILES['pic3']['name'];
$pic4 = $_FILES['pic4']['name'];
$pic5 = $_FILES['pic5']['name'];
$pic6 = $_FILES['pic6']['name'];
if (isset($pic1) and !empty($pic1) and isset($pic2) and !empty($pic2) and isset($pic3) and !empty($pic3) and isset($pic4) and !empty($pic4) and isset($pic5) and !empty($pic5) and isset($pic6) and !empty($pic6)){
if (isset($gr_name) and !empty($gr_name)){
for ($i = 1; $i <= 6; $i++){
$a = $_FILES['pic'.$i.'']['name'];
$b = explode(".",$a);
$c = count($b);
$d = $b[$c-1];
$e = array("JPG","JPEG","jpg","jpg");
if (in_array($d,$e)){
$path = "img/$gr_pol/";
$datename = date("YmdHis"); //2010/09/01 24:00:00
${name.$i} = $datename."_".$gr_name."_"."pic"."_".$i.".".$d;
move_uploaded_file($_FILES['pic'.$i.'']["tmp_name"], $path.${name.$i});

///////// Start the thumbnail generation//////////////
	$n_width = 160;
	$n_height = 131;
	$tsrc = "img/$gr_pol/small/".$_FILES['pic'.$i.'']['tmp_name'].${name.$i};
		if($_FILES[userfile][type]=="image/pjpeg"){
			$im = ImageCreateFromJPEG($add);
			$width = ImageSx($im);
			$height = ImageSy($im);
			$newimage = imagecreatetruecolor($n_width,$n_height);                 
			imageCopyResized($newimage,$im,0,0,0,0,$n_width,$n_height,$width,$height);
			ImageJpeg($newimage,$tsrc);
		}
echo "Снимка $i е качена.<br>";
}
else{
echo "Снимка $i използва неразрешен формат!";
}
}
$ip = $_SERVER['REMOTE_ADDR'];
$q = mysql_query("INSERT INTO zaqvka (gr_name, picture1, picture2, picture3, picture4, picture5, picture6, ip) VALUES('$gr_name','$name1','$name2','$name3','$name4','$name5','$name6','$ip')") or die(mysql_error());
echo '
Вашата заявка за участие е приета и записана.<br /><br />
Вашият профил ще бъде активиран от началото на следващият месец, ако отговаря на условията на конкурса.</center><br /><br />!';
}
else{
echo "Трябва да въведете Име!";
}}
else{
echo "Снимките са по-малко от 6!";
}}
?>


Вкарал си $_FILEs в нова променлива, а не я изполваш ?
$tsrc = "img/$gr_pol/small/".$_FILES['pic'.$i.'']['tmp_name'].${name.$i};
if($_FILES[userfile][type]=="image/pjpeg"){

$_FILES['pic'.$i'] e по-добре oот $_FILES['pic'.$i.'']
и не мисля че $_FIELS[userfile][type] e същото като $_FILES['pic'.$i][type]


Прегледай си променливите. Не съм гледал кода за други пролеми , просто това ми се наби на очи.
И имам 1 въпрос , понеже ми стана интересно : ${name.$i};
какво трябва да върне ?
 
Когато $_FILES['pic'.$i.''], го променя по твоя начин ми вади грешка от рода на:

Parse error: syntax error, unexpected T_CONSTANT_ENCAPSED_STRING, expecting ']' in


${name.$i} - >

20100904022404_test_pic_1.jpg
20100904022404_test_pic_2.jpg
20100904022404_test_pic_3.jpg
20100904022404_test_pic_4.jpg
20100904022404_test_pic_5.jpg
20100904022404_test_pic_6.jpg

Да, оправих си грешката със
Код:
$_FIELS[userfile][type]
, на
Код:
$_FILES['pic'.$i][type]


В момента нито създава нова снимка нито нищо. Някакви идеи :?
 

Back
Горе