Я сделаю проще: я спрошу сначала.ии в чём подвох ?? я не использую в принципе обращений к реквесту без оберток, или тут нужно написать было
полегчало от колва понтов ?Код:$ids = KHelperArray::settype(KRequest::get('post.id','raw',array()),'int'); print_r($ids);
моя строчка делает тоже что строчка тов остапова но она короче, я круче ???
Уважаемый, оппонент, я думаю это не есть смысл дискуссии а тем более ветки форума. Каков вопрос таков ответ и вопрос состоял в том как передать массив данных с формы - я дал пояснение, остальное это не по сути.Я сделаю проще: я спрошу сначала.
Действительно ли вам надо пояснить, в чём разница, или вас интересует дискуссия в молодёжном стиле сокращений слов, игнорирования прописных букв и умножения знаков пунктуации?
Для программиста вопрос всегда должен стоять как сделать что-то наиболее эффективно и безопасно. Даже для программиста на PHP. Ваш код – сплошная дыра, что, к сожалению, свойственно тем, кто пришёл в PHP с Joomla. Считаю, что дискуссия о эффективности и безопасности кода, особенно PHP, и составляет саму суть программирования. Надеюсь, вы со мной согласны, как разумный программист.вопрос состоял в том как передать массив данных с формы - я дал пояснение, остальное это не по сути.
<!-- Для дополнитльных полей-->
<script>
function xdropFile(btn){
if(document.getElementById) {
tr = btn;
while (tr.tagName != 'TR') tr = tr.parentNode;
tr.parentNode.removeChild(tr);
xcheckForLast();
}
}
function xaddFile(btn){
if(document.getElementById) {
tr = btn;
while (tr.tagName != 'TR') tr = tr.parentNode;
var idSuffix = Math.round(Math.random()*1000);
var newTr = tr.parentNode.insertBefore(tr.cloneNode(true),tr.nextSibling);
thisChilds = newTr.getElementsByTagName('td');
for (var i = 0; i < thisChilds.length; i++){
if (thisChilds[i].className == 'header') thisChilds[i].innerHTML = '';
if (thisChilds[i].className == 'files') thisChilds[i].innerHTML = '<input size="32" name="file_name[]" class="wideFile" type="file">';
}
checkForLast();
}
}
function xcheckForLast(){
btns = document.getElementsByName('xdrop');
for (i = 0; i < btns.length; i++){
btns[i].disabled = (btns.length == 1) ? true : false;
}
}
</script>
<!-- конец -->
// вывожу таблицу по id для добавления фотографий или редактирования названия фотоальбома
if ($_GET['do']=="editPhotoAlbom") {
$idAlbom=$_GET['idAlbom'];
$q=mysql_query("SELECT * FROM `photo_alboms` WHERE(`id`='$idAlbom')");
$r=mysql_fetch_array($q);
echo "
<form action='admin.php?event=controlPhotoGallery&do=editPhotoAlbom' method=post enctype=\"multipart/form-data\">
<table class=box cellspacing=0 border=0 style=\"float:left\">
<tr>
<td class=td-box><h2>Добавление фотографий</h2></td>
</tr>
<tr>
<td class=td-box>Название фотоальбома:</td>
</tr>
<tr>
<td class=td-box><input size=60 type=text name=photoAlbomName value='".$r['photoAlbomName']."'></td>
</tr>
<tr>
<td class=td-box>Добавьте фотографии:</td>
</tr>
<tr>
<td class=td-box><input type=\"file\" size=\"32\" name=\"file_name[]\"><input type=\"button\" name=\"xdrop\" value=\" − \" onClick=\"xdropFile(this);\"><input type=\"button\" value=\" + \" onClick=\"xaddFile(this);\"></td>
</tr>
<tr>
<td>
<input type=hidden name=idAlbom value='".$idAlbom."'>
<input type=submit name=submit_saveEditPhotoAlbom value=' Добавить фотографии '></td>
</tr>
</table></form>";
if (isset($_POST['submit_saveEditPhotoAlbom'])) {
$photoAlbomName=$_POST['photoAlbomName'];
$idAlbom=$_POST['idAlbom'];
mysql_query("UPDATE `photo_alboms` SET `photoAlbomName`='$photoAlbomName' WHERE(`id`='$idAlbom')");
$dir_name="files/PGallery/";
for($i=0;$i<count($_FILES['file_name']);$i++) {
$file_name=$QWN_Code.$_FILES['file_name']['name'][$i];
//$QWN_Code=$QWN_Code=uniqid("CODE_", TRUE); случайное число
move_uploaded_file($_FILES['file_name']['tmp_name'][$i], $dir_name.$file_name);
mysql_query("INSERT INTO `photos` VALUES(0, '$idAlbom', '$file_name', '$time', '$date')");
}
//echo("<script type=\"text/javascript\"> history.go(-1) </script>");
} else;
:!::!::!: ДЕТИ МОИ, ЗАКЛИНАЮ ВАС, НЕ ПИШИТЕ ТАК!!! ЭТО УЯЗВИМОСТЬ ДЛЯ SQL-ИНЪЕКЦИИ. :!::!::!:PHP:$idAlbom=$_GET['idAlbom']; $q=mysql_query("SELECT * FROM `photo_alboms` WHERE(`id`='$idAlbom')");PHP:$photoAlbomName=$_POST['photoAlbomName']; $idAlbom=$_POST['idAlbom']; mysql_query("UPDATE `photo_alboms` SET `photoAlbomName`='$photoAlbomName' WHERE(`id`='$idAlbom')");