как да стане с switch или друг начин

efrdimitrov

Registered
имам следния код:
PHP:
if(!in_array($extension_file1,$extensions1) && !empty($filename1))
{echo "<center><font color='9a1111' size='4'><b>Файл 1 \" $filename1 \" е с грешен формат, позволени са: jpg, gif, png, bmp;</b></font></center>"; }

elseif(!in_array($extension_file2,$extensions2) && !empty($filename2))
{echo "<center><font color='9a1111' size='4'><b>Файл 2 \" $filename2 \" е с грешен формат, позволени са: jpg, gif, png, bmp;</b></font></center>"; }

elseif(!in_array($extension_file3,$extensions3) && !empty($filename3))
{echo "<center><font color='9a1111' size='4'><b>Файл 3 \" $filename3 \" е с грешен формат, позволени са: jpg, gif, png, bmp;</b></font></center>"; }


elseif (!empty($filename1) && $filesize1 > '1048576') { echo "<center><font color='9a1111' size='4'><b>Снимка1 \" $filename1 \" е с по-голям 
размер,макцимален размер 1mb!</b></font></center><br>"; }

elseif (!empty($filename2) && $filesize2 > '1048576') { echo "<center><font color='9a1111' size='4'><b>Снимка2 \" $filename2 \" е с по-голям 
размер,макцимален размер 1mb!</b></font></center><br>"; }

elseif (!empty($filename3) && $filesize3 > '1048576') { echo "<center><font color='9a1111' size='4'><b>Снимка3 \" $filename3 \" е с по-голям 
размер,макцимален размер 1mb!</b></font></center><br>"; }

elseif($email == NULL || $tel == NULL || $text == NULL || $grad == NULL) {
echo "<center><font color='9a1111' size='5'><b>Моля попълнете задължителните полета!</b></font></center>"; }
else {
if (!empty($filename1)) { $rand_file_name1 = rand(1000000000, 9999999999999);  $newfile_name = $rand_file_name1.$filename1;
$upload = move_uploaded_file($tmpname_file1, $folder.$rand_file_name1); }
if (!empty($filename2)) { $rand_file_name2 = rand(1000000000, 9999999999999);  $newfile_name = $rand_file_name2.$filename2;
$upload = move_uploaded_file($tmpname_file2, $folder.$rand_file_name2); }
if (!empty($filename3)) { $rand_file_name3 = rand(1000000000, 9999999999999);  $newfile_name = $rand_file_name3.$filename3;
$upload = move_uploaded_file($tmpname_file3, $folder.$rand_file_name3); }

$sql = "INSERT INTO publikuvai
(rand_file_name1, rand_file_name2, rand_file_name3, kategoriq, text, ime, tel, grad, cena, data, email, ip) VALUES 
('$rand_file_name1', '$rand_file_name2', '$rand_file_name3', '$kategoriq', '$text',  '$ime', '$tel', '$grad', '$cena', '$data', '$email', '$ip')";
mysql_query($sql) or die (mysql_error());
header("LOCATION: nova.php?id=$id");
}
В момента като открие грешка и кода спира а аз искам да открива няколко грешки и да ми ги показва.Пробвах със switch с всяка по отделно, но ми показва всички наведнъж и не знам как да стане и разбира се else-а е важен.Благодаря предварително
 

index

Super Moderator
Вкарай информацията в един масив , след това създавай нов празен масив.Обходи първият с цикъл, в който да се прави проверка. Ако проверката даде грешка , ще я записва в ново създаденият празен масив.
След това преброй колко записва има в "празният масив". Ако са повече от 0 няма да ти се изпълни заявката.
 

efrdimitrov

Registered
Помъчих се,но не знам как да стане.Ако може поне малък пример,понеже тези масиви са толкова важни,но не ги разбирам.
 

Горе