Strict Standards: Resource ID#18 used as offset, casting to integer (18) in /home/tvoyweb/domains/tvoyweb.ru/public_html/forums/include/fm.class.php on line 401

Strict Standards: Resource ID#23 used as offset, casting to integer (23) in /home/tvoyweb/domains/tvoyweb.ru/public_html/forums/include/fm.class.php on line 401

Strict Standards: Resource ID#25 used as offset, casting to integer (25) in /home/tvoyweb/domains/tvoyweb.ru/public_html/forums/include/fm.class.php on line 401

Strict Standards: Resource ID#26 used as offset, casting to integer (26) in /home/tvoyweb/domains/tvoyweb.ru/public_html/forums/include/fm.class.php on line 401
ТвойWeb :: Вставка записей в БД из формы [2]
ТвойWeb ТвойWeb
Качественный Европейский хостинг
Форум для чайников
 Чат на форуме      Помощь      Поиск      Пользователи


 Страниц (2): « 1 [2]   

> Без описания
Lera
Отправлено: 15 Июня, 2007 - 08:02:26
Post Id



Newbie


Покинул форум
Сообщений всего: 10
Дата рег-ции: Июнь 2007  

Карма 0




Furax, спасибо тебе большое! Сейчас попробую.
 
 Top
Lera
Отправлено: 19 Июня, 2007 - 07:47:37
Post Id



Newbie


Покинул форум
Сообщений всего: 10
Дата рег-ции: Июнь 2007  

Карма 0




Furax, посмотри, пожалуйста, на мою очередную проблему!

Клиент добавил благополучно (УРА! все работает!!! Улыбка) "товар". Далее, он идет по ссылке, связанной с id каждого товара на страничку для загрузки своих фото мне. Данные о закачке идут в БД. На данном этапе все работает. Мне нужно поставить ограничение - закачка максимум 5 фото для каждого "товара". Не знаю куда и как это прилепить.

Вот скрипт добавления фото и добавления записей в БД одновременно:

CODE:
<?php

if(!isset($_POST['Transfert']))
{
include ("forma_charge.inc");

}
else
{
if($_FILES['pix']['size'] == 0)
{
echo "<font color='#CC0000'><center>Le chargement a &#233;choue. V&#233;rifiez la taille du fichier. Elle doit &#234;tre inf&#233;rieure &#224; 2 Mo.</center></font>";

include("forma_charge.inc");
exit();
}
if(!ereg("image",$_FILES['pix']['type']))
{
echo"<font color='#CC0000'><center>Le fichier envoy&#233; n'est pas une image. Essayez avec un autre fichier ayant une extention en .jpg ou .gif</center></font>";

include("forma_charge.inc");
exit();
}
else
{
$destination='c:\data'."\\".$_FILES['pix']['name'];
$temp_file=$_FILES['pix']['tmp_name'];
move_uploaded_file($temp_file,$destination);
echo"<p aling='center'><font color='#CC0000'>Transfert du fichier r&#233;ussi:</font>
{$_FILES['pix']['name']}
({$_FILES['pix']['size']})</p>";

$editFormAction = $_SERVER['PHP_SELF'];
if (isset($_SERVER['QUERY_STRING'])) {
$editFormAction .= "?" . htmlentities($_SERVER['QUERY_STRING']);
}

if ((isset($_POST["MM_insert"])) && ($_POST["MM_insert"] == "form1")) {
$client=$_SESSION['MM_Username'];
$photo=$_FILES['pix']['name'];
$montage=$row_panier['article'];
$insertSQL = sprintf("INSERT INTO bp_photos (client, montage, photo) VALUES (%s, %s, %s)",
GetSQLValueString($client, "text"),
GetSQLValueString($_POST['montage'], "text"),
GetSQLValueString($photo, "text"));

mysql_select_db($database_bp, $bp);
$Result1 = mysql_query($insertSQL, $bp) or die(mysql_error());
}


include("forma_charge.inc");
exit();
}
}
?>
 
 Top
Lera
Отправлено: 21 Июня, 2007 - 08:02:09
Post Id



Newbie


Покинул форум
Сообщений всего: 10
Дата рег-ции: Июнь 2007  

Карма 0




Furax, зайди пожалуйста в эту тему! Без тебя ничего не получается! Улыбка
 
 Top
Furax
Отправлено: 22 Июня, 2007 - 09:54:40
Post Id



Бледнотик


Покинул форум
Сообщений всего: 1472
Дата рег-ции: Март 2007  
Откуда: Иркутск, Сибирь, СССР

Карма 32




Lera, привет!

Экзамен я сдавал... Не до того было... Сейчас попробую вникнуть.

Так, во-первых, хранить файлы под именами, данными пользователем - штука опасная. Может быть, окажется два файла с одинаковыми именами? Или даже будет предпринята попытка взлома через эту лазейку?

Набросаю примерно, хорошо? Если что-то будет непонятно - потом растолкую, а то в 11 вечера после экзамена башка не варит толком... Естесственно, запросы набиваем тщательно.

CODE:
<...>
mysql_select_db($database_bp, $bp);
$result=mysql_query("select id from images where article_id=$article_id") or die('...');
if (mysql_num_rows($result>=5)
{
echo '...';
exit();
}
else
{
добавляем...
}

При добавлении - что-то вроде

$result=mysql_query("insert into images (id, article) values(NULL, $article) or die('...');
$id=mysql_insert_id($result);
$destination='c:\data\$id'.расширение_файла(берётся из $_FILES['pix']['name']);
//Под виндой, что ли?..
//Перемещаем... Радуемся...

(Добавление)
Так, и ещё кое-что. Поздно понял. В эту же таблицу надо будет добавлять и расширение файла, а то как мы иначе сможем получать имена картинок? И можно ещё сделать проверочку, просто на всякий случай: если файл переместить не удалось, добавленную строку из базы убираем. Идентификатор же есть!
 
 Top
Lera
Отправлено: 22 Июня, 2007 - 12:43:05
Post Id



Newbie


Покинул форум
Сообщений всего: 10
Дата рег-ции: Июнь 2007  

Карма 0




Furax. спасибо большущее!!! Сейчас буду разбираться. Меня неделю не будет, но я потом тут напишу что у меня получилось.

Как экзамен? Что сдавал? Улыбка
 
 Top
Furax
Отправлено: 22 Июня, 2007 - 13:00:15
Post Id



Бледнотик


Покинул форум
Сообщений всего: 1472
Дата рег-ции: Март 2007  
Откуда: Иркутск, Сибирь, СССР

Карма 32





Квантовую теорию поля... В понедельник досдам.
 
 Top
Страниц (2): « 1 [2]
Сейчас эту тему просматривают: 1 (гостей: 1, зарегистрированных: 0, скрытых: 0)
« PHP/Perl »


Все гости форума могут просматривать этот раздел.
Только администраторы и модераторы могут создавать новые темы в этом разделе.
Только администраторы и модераторы могут отвечать на сообщения в этом разделе.
 



Форум на AlfaSpace.NET


Powered by ExBB
ExBB FM 1.0 RC1 by TvoyWeb.ru
InvisionExBB Style converted by Markus®

[Script Execution time: 0.0448]     [ Gzipped ]



Notice: ob_end_flush(): failed to send buffer of ob_gzhandler (1) in /home/tvoyweb/domains/tvoyweb.ru/public_html/forums/include/page_tail.php on line 33