Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум MySQL

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: Запись данных из массива в mysql

Сообщения:  [1-8] 

 
 автор: cheops   (18.10.2011 в 15:22)   письмо автору
 
   для: tima2010   (18.10.2011 в 14:43)
 

Быстрее будет, конечно, второй, хотя на его обслуживание уходит чуть больше кода и чуть больше памяти на стороне PHP.

  Ответить  
 
 автор: virtus1k   (18.10.2011 в 14:55)   письмо автору
 
   для: tima2010   (18.10.2011 в 14:43)
 

Второй!

  Ответить  
 
 автор: tima2010   (18.10.2011 в 14:43)   письмо автору
 
   для: cheops   (18.10.2011 в 12:51)
 

Воспользовался первым вариантом, спасибо!

А какой по вашему лучше и быстрее?

  Ответить  
 
 автор: cheops   (18.10.2011 в 12:51)   письмо автору
 
   для: tima2010   (18.10.2011 в 11:21)
 

Нужно либо поместить запрос внутрь цикла
<?php 
foreach ($_SESSION['name'] as $id => $name) {  
  
$myname  $name
  
$mymoney $_SESSION['sum'][$id];   
  
$query query("INSERT INTO ".$mybase." (myname, mymoney) VALUES('$myname', '$mymoney')"); 

?>
Либо воспользоваться многострочным оператором INSERT
<?php 
foreach ($_SESSION['name'] as $id => $name) {  
  
$myname  $name
  
$mymoney $_SESSION['sum'][$id];   
  
$sql[] = "('$myname', '$mymoney')";

$query query("INSERT INTO ".$mybase." (myname, mymoney) VALUES ".implode(", "$sql)); 
?>

  Ответить  
 
 автор: tima2010   (18.10.2011 в 11:56)   письмо автору
 
   для: Гость   (18.10.2011 в 11:28)
 

а если поместить запрос прямо в foreach ? плохо ?

  Ответить  
 
 автор: tima2010   (18.10.2011 в 11:35)   письмо автору
 
   для: Гость   (18.10.2011 в 11:28)
 

А проще нет варианта?
здесь получается мы сериализуем потом десериализуем

  Ответить  
 
 автор: Гость   (18.10.2011 в 11:28)   письмо автору
 
   для: tima2010   (18.10.2011 в 11:21)
 

Смотрите в сторону функций "serialize" и "unserialize"

  Ответить  
 
 автор: tima2010   (18.10.2011 в 11:21)   письмо автору
 
 

Привет! Каким образом можно записать данные из массива такого вида, в базу средствами PHP ?


<!-- <pre>
Array
(

    [name] => Array
        (
            [123] => Название 1
            [124] => Название 2
            [125] => Название 3
        )

    [sum] => Array
        (
            [123] => 500
            [124] => 600
            [125] => 700
        )

)
</pre> -->
]


На данный момент записываю в базу таким образом:


<?php
foreach ($_SESSION['name'] as $id => $name) { 
$myname  $name;
$mymoney $_SESSION['sum'][$id];  
}

$query query("INSERT INTO ".$mybase." (myname, mymoney) VALUES('$myname', '$mymoney')");
?>


но записывает только последнее значение массива, а как записать каждое?

  Ответить  

Сообщения:  [1-8] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования