[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: поле INSERT
Lenarfate
как здесь организовать поле INSERT , чтобы вставлялось любое количество файлов, а не один?? rolleyes.gif

    if($ok)
{
if($_FILES)
{
$num = count($_FILES['img']['name']);

for($i = 0; $i < $num; $i++)
{
if($_FILES['img']['name'][$i] !== '')
{
if($_FILES['img']['size'][$i] != 0 && $_FILES['img']['size'][$i] <= (1024 * 1024))
{
$ext = array('.png', '.jpeg', '.jpg', '.JPG');

if(in_array(strrchr($_FILES['img']['name'][$i], '.'), $ext))
{
if(is_uploaded_file($_FILES['img']['tmp_name'][$i]))
{
if(move_uploaded_file($_FILES['img']['tmp_name'][$i],
$url . md5(basename($_FILES['img']['name'][$i]))))
{
$pub = 1;
$imgurl = md5(basename($_FILES['img']['name'][$i]));

$res = query("INSERT INTO `". PREFIX ."gallery`
SET `imgurl` = '"
. $imgurl ."',
`public` = '"
. $pub ."'");

header('location: '. href('page=gallery', 'rem=show'));
exit();
}
}
}
}
}
}
}

else
$errors_array[] = POST_IMAGE;
}
[s]



Спустя 44 минуты, 1 секунда (6.03.2010 - 14:00) DedMorozzz написал(а):
сам запрос вставки циклом. Сразу кучу полей 1м запросом - не выйдет

Спустя 59 минут, 25 секунд (6.03.2010 - 14:59) Lenarfate написал(а):
делал циклом while, идет бесконечный цикл, виснет sad.gif

Спустя 1 час, 9 минут, 48 секунд (6.03.2010 - 16:09) DedMorozzz написал(а):
покажи как делал

Спустя 2 минуты, 6 секунд (6.03.2010 - 16:11) Lenarfate написал(а):

while($imgurl = md5(basename($_FILES['img']['name'][$i])))
$res = query("INSERT INTO `". PREFIX ."gallery`
SET `imgurl` = '"
. $imgurl ."',
`public` = '"
. $pub ."'");

Спустя 21 минута, 30 секунд (6.03.2010 - 16:32) DedMorozzz написал(а):
Цитата
while($imgurl = md5(basename($_FILES['img']['name'][$i])))

это условие выполняеться всегда. Надобно "==", а не "=". И возьми выполняемое дейтвие в фигурные скобки

Спустя 1 минута, 37 секунд (6.03.2010 - 16:34) Lenarfate написал(а):
так вообще не работает

Спустя 2 минуты, 55 секунд (6.03.2010 - 16:37) DedMorozzz написал(а):
а ну да, то я туплю! Ты же переменой $imgurl присваеваеш хеш, а не сравниваешь значения И те надо сделать проверку на существование. Если тру - тогда инсерт. Если правильно понял, что хочешь

Спустя 3 минуты, 23 секунды (6.03.2010 - 16:40) Lenarfate написал(а):
один хер, тоже самое sad.gif

Спустя 1 минута, 18 секунд (6.03.2010 - 16:42) DedMorozzz написал(а):
быть того не может...Кинь весь код

Спустя 1 минута, 50 секунд (6.03.2010 - 16:44) Lenarfate написал(а):
наверху весь код, вот вывод
<script type="text/javascript" src="<?php print HOST .'skins/js/dinUp.js'; ?>"></script>
<div
style="margin:10px;">
<h2><?php print
$language['gallery']; ?></h2><br />
<h4><?php print
$language['adding']; ?></h4><br />
<form
action="" method="post" enctype="multipart/form-data">
<div
id="im">
<input
type="file" name="img[]" /> <a href="#" onClick="return oneMore();">загрузить еще</a><br />
</div>
<input
type="submit" name="ok" value="<?php print $language['save']; ?>" />
</form>
<?php print
error($errors_array); ?>
</div>

input file добавляется динамично

Спустя 5 минут, 41 секунда (6.03.2010 - 16:49) DedMorozzz написал(а):
я про не работающий код, который выполняеться с проверкой существования.

Спустя 4 минуты, 3 секунды (6.03.2010 - 16:53) Lenarfate написал(а):
то есть добавить типа if(isset($imgurl)) ??

Спустя 8 минут, 29 секунд (6.03.2010 - 17:02) DedMorozzz написал(а):
погоди! У тя и так вставка в цикле!! Чего ещё хочешь добиться?
у тя инсерв внутри цикла for($i = 0; $i < $num; $i++)
По окончании работы ЭТОГО цыкла будет вставлено столько полей сколько есть.

Спустя 2 минуты, 52 секунды (6.03.2010 - 17:05) Lenarfate написал(а):
дык если б, ни фига ж!

Спустя 11 минут, 49 секунд (6.03.2010 - 17:16) Lenarfate написал(а):
че делать то))

Спустя 3 минуты, 57 секунд (6.03.2010 - 17:20) DedMorozzz написал(а):
перед ф-ей вставки распечатай $imgurl. Что выдаёт. напииши: "echo $imgurl;die;"

Спустя 2 минуты, 12 секунд (6.03.2010 - 17:23) Lenarfate написал(а):
выдает только имя первого файла

Спустя 3 минуты, 35 секунд (6.03.2010 - 17:26) DedMorozzz написал(а):
Цитата
$res = query("INSERT INTO `". PREFIX ."gallery`
А тут не так ли надо?:
 $res = mysql_query("INSERT INTO `". PREFIX ."gallery`
??

Спустя 2 минуты, 3 секунды (6.03.2010 - 17:28) Lenarfate написал(а):
query моя функция с отладкой, в ней все в порядке)

Спустя 3 минуты, 29 секунд (6.03.2010 - 17:32) DedMorozzz написал(а):
$res = query("INSERT INTO ` tblname` SET (imgurl,public) VALUES ('$imgurl', '$pub'");
так

Спустя 47 секунд (6.03.2010 - 17:32) DedMorozzz написал(а):
ты делаешь "Инсерт" с синтаксисом АПДЕЙТА!

Спустя 1 минута, 9 секунд (6.03.2010 - 17:34) Lenarfate написал(а):
тоже самое

Спустя 2 минуты, 13 секунд (6.03.2010 - 17:36) DedMorozzz написал(а):
$res = query("INSERT INTO ` tblname` SET (imgurl,public) VALUES ('$imgurl', '$pub')") or die('error');

должно выдать ошибку. Если выдаёт - у тя бок с самом запроом. проверь подключение к бд. Ибо перед работой с БД всё норм. данные беруться и присваиваються!

Спустя 5 минут, 14 секунд (6.03.2010 - 17:41) Lenarfate написал(а):
а может дело в яваскрипте??
function oneMore()
{
var node = document.getElementById('im');
var divElement = document.createElement("div");
var inputElement = document.createElement("input");
inputElement.setAttribute("name", "img[]");
inputElement.setAttribute("type", "file");

var adelElement = document.createElement("a");
adelElement.setAttribute("href", "#");
adelElement.setAttribute("onClick", "return delNode(this.parentNode);");
adelElement.appendChild(document.createTextNode('убрать'));

divElement.appendChild(inputElement);
divElement.appendChild(document.createTextNode(String.fromCharCode(160)));
divElement.appendChild(adelElement);

node.appendChild(divElement);
return false;
}


function delNode(node)
{
node.parentNode.removeChild(node);
return false;
}

Спустя 4 минуты, 59 секунд (6.03.2010 - 17:46) DedMorozzz написал(а):
ерор высветился? (заметь, я потом добавил скобку, которую в начале не нарисовал =) )

Спустя 2 минуты, 2 секунды (6.03.2010 - 17:48) Lenarfate написал(а):
нет говорю, сам запрос пашет

Спустя 30 минут (6.03.2010 - 18:18) dr_Lev написал(а):
У тебя после инсёрта идет
header('location: '. href('page=gallery', 'rem=show'));
exit();
тоесть следующая вставка не пройдет, вынеси эти две строки за границы цикла...

Спустя 3 минуты, 11 секунд (6.03.2010 - 18:21) Lenarfate написал(а):
ПППААССИББББАААА!!!!!! biggrin.gif laugh.gif smile.gif
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.