|
|
|
| Насколько практичен данный код?
for ($i = 0; $i <= 4; $i++)
{
if ($_POST["df_$i"] == '1')
{
$resultc=mysql_query("SELECT * FROM auto_photo WHERE auto_id = '$auto[id]' order by id asc limit ".$i.",1") or die("<B>Error ".mysql_errno()." :</B> ".mysql_error()."");
$aphoto = mysql_fetch_array($resultc);
unlink("../photo/files/".$aphoto[img_name]);
unlink("../photo/files/s_".$aphoto[img_name]);
if ($_POST["df_0"] == '1') { unlink("../photo/files/m_".$aphoto[img_name]); }
$query_df = "DELETE FROM auto_photo WHERE id = '$aphoto[id]' and auto_id='$auto[id]'";
$req_df = mysql_query($query_df) or die("<B>Error ".mysql_errno()." :</B> ".mysql_error()."");
$query_auto_pic="SELECT * FROM auto_photo where auto_id='$auto[id]'";
$result_auto_pic=mysql_query($query_auto_pic) or die("<B>Error ".mysql_errno()." :</B> ".mysql_error()."");
if (mysql_num_rows($result_auto_pic)==0)
{
$query = "UPDATE auto SET photo='0' WHERE id = '$auto[id]'";
$req = mysql_query($query) or die("<B>Error ".mysql_errno()." :</B> ".mysql_error()."");
}
}
}
|
| |
|
|
|
|
|
|
|
для: kis-kis
(11.12.2008 в 18:43)
| | Следующие строки лучше поменять местами - иначе у вас цикл гоняется всякий раз, даже когда условие не выполняется, а когда оно выполняется - проверка осуществляется пять раз, вместо одного.
for ($i = 0; $i <= 4; $i++)
{
if ($_POST["df_$i"] == '1')
|
PS А вообще, если скрипт работает - он практичен :))) | |
|
|
|
|
|
|
|
для: cheops
(13.12.2008 в 15:03)
| | спасибо за ответ. А на счет строк, разве нужно их менять? Проверка просто идет для 5 фотографий | |
|
|
|
|
|
|
|
для: kis-kis
(15.12.2008 в 09:29)
| | Еще вопрос, не подскажите почему при удалении сразу всех (5) фото, удаляются только первые три? При повторном удалении еще одна, потом еще одна... ( | |
|
|
|
|
|
|
|
для: cheops
(13.12.2008 в 15:03)
| | Если поменять строки местами, получится нотайс. Но Вы его уже не увидите.
PS. Заглянул в яндекс-словари.
Практичность - совокупность свойств инструмента, влияющих на эффективность его использования в конкретной предметной деятельности, и выражающихся:
- в применимости этого инструмента;
- в легкости его освоения и использования;
- в воспроизводимости полученных навыков;
- в низкой частоте ошибок;
- в субъективном удовольствии и других факторах.
Определение не единственное, но наиболее емкое, на мой взгляд.
Комментарии, как говорится, излишни. | |
|
|
|
|
|
|
|
для: Trianon
(15.12.2008 в 12:04)
| | А если без философии? :) | |
|
|
|
|
|
|
|
для: kis-kis
(15.12.2008 в 13:08)
| | А если без философии, то мне, например сложно прочесть этот код.
просто прочесть, чтобы понять что же он делает и как его можно применить.
То есть, можно конечно, и строки длинные свернуть, и скобки читабельно расставить, и отступы сделать человеческие, какие-то минимальные комментарии написать..
А вот в этом виде самое практичное, что можно с ним сделать - выкинуть, не вчитываясь. | |
|
|
|
|
|
|
|
для: Trianon
(15.12.2008 в 12:04)
| | я-бы добавил ;)
*** если конкретная предметная деятельность не имеет преобладающего приоритета над другими конкретными предметными деятельностями, то фактор лёгкости избавления от инструмента как от ненужного, с понесением минимального ущерба является одним из главных свойств практичности.
- применимость непименяемости как практичность пользователя.
следовательно :
Практичность - совокупность харрактеристик пользователя, в конкретно данной обстановке , способствующая достижения определённых целей, получение совокупности материальных и моральных вознаграждений:
- субъективное удовольствие и другие факторы .) | |
|
|
|
|
|
|
|
для: xx77
(15.12.2008 в 13:17)
| | крайне туманно.
поясните, пожалуйста, на примере. | |
|
|
|
|
|
|
|
для: Trianon
(15.12.2008 в 13:31)
| | я так , к слову просто :)
лично я для себя сделал-бы в начале как-нибудь так ,
потому-что мне так удобнее разобраться с переменными
, и скопипастить куданибудь попроще, если изменить чего ,)
, только одно ещё могло-бы повлиять , время выполнения скрипта
, практично лично для меня.
<?
$array = array();
if (isset($_POST['df_0']) && $_POST['df_0']==1) $flag = true;
array_walk($_POST, 'obrabotka');
if ($_POST['df_0']) $flag = true;
function obrabotka($v, $k) {
global $array;
list($k) = sscanf($k, "df_%i");
if ($k && $v == 1) $array[] = $k;
}
foreach($array AS $i) {
$resultc = mysql_query("SELECT * FROM auto_photo
WHERE auto_id = '$auto[id]' order by id asc limit ".$i.",1")
or die("<B>Error ".mysql_errno()." :</B>".mysql_error()."");
$aphoto = mysql_fetch_array($resultc);
unlink("../photo/files/".$aphoto[img_name]);
unlink("../photo/files/s_".$aphoto[img_name]);
if ($flag) { unlink("../photo/files/m_".$aphoto[img_name]); }
//...............
//...........
}
|
А то насколько практично для интерпритатора , дело второе ,) если работает нормально | |
|
|
|
|
|
|
|
для: xx77
(15.12.2008 в 13:47)
| | :)
хотя для PHP наверное было-бы практичнее если я-бы сделал
while($var = (isset($var)) ? next($_POST) : current($_POST)) {
...........
// upd исправлял ошибки раза три ) | |
|
|
|
|
 2 Кб |
|
|
для: xx77
(15.12.2008 в 14:46)
| |
<?//вообще-то сравнил array_walk()
//c функцией
function obrabotka($v, $k) {
global $array;
list($k) = sscanf($k, "df_%i");
if ($k && $v == 1) $array[] = $k;
}
//и просто вызов функции
function razrabotk($post) {
global $array;
foreach($post AS $k => $v) {
list($k) = sscanf($k, "df_%i");
if ($k && $v == 1) $array[] = $k;
}
}
|
array_walk() заметно медленнее раза в два )
// прикрепил код которым сравнивал
//upd
Заметил ошибку, переприкрепил | |
|
|
|