PHP - foreach как хранить массив в mysql - PullRequest
1 голос
/ 17 декабря 2009

Я хочу сохранить массив в mysql db примерно так

item_row  = nike,adidas,puma
qty_row   = 1,3,2
total_row = 100,200,150

Еогеасп

  foreach ($_SESSION['order'] as $values) {
      $item_name = $values['item-name'];
      $item_qty = $values['item-qty'];
      $item_price = $values['item-price'];
  }

Дайте мне знать, как это сделать?

обновление

  foreach ($_SESSION['order'] as $values) {
      $item_name[] = $values['item-name'];
      $item_qty[] = $values['item-qty'];
      $item_price[] = $values['item-price'];
  }

  $item_row = implode(",", $item_name);
  $qty_row = implode(",", $item_qty);
  $total_row = implode(",", $item_price);

Ответы [ 3 ]

4 голосов
/ 17 декабря 2009
item_row = implode(',', $_SESSION['order']['item-name']);
qty_row = implode(',', $_SESSION['order']['item-qty']);
total_row = implode(',', $_SESSION['order']['item-price']);
0 голосов
/ 17 декабря 2009

Я использую класс для управления соединением с базой данных, и выполнение запроса позволяет мне добавить его к вам:

class DbConnection
{
var $ReturnQuery;
function Connect()
{
    $connection = mysql_connect("serverName", "user", "password");
    $DbSelect = mysql_select_db("databaseName", $connection);
    if ($DbSelect)
        return true;
    else
        return false;
}
function Execute($Query)
{
    $ExecuteQuery = mysql_query($Query);
    $affected = mysql_affected_rows();
    if ($affected != -1)
    {
        if ($affected != 0)
        {
            if ($ExecuteQuery != 1)
            {
                while($row=mysql_fetch_assoc($ExecuteQuery))
                {
                    $ResulArray[] = $row;
                }
                $this->ReturnQuery = $ResulArray;
            }
            return 1;
        }
        else
        {
            $this->ReturnQuery = '';
            return 0;

        }
    }
    else
    {
        $this->ReturnQuery = '';
        return -1;
    }
}
}

и затем вы можете создавать экземпляры для выполнения вашего запроса:

require_once('Includes/DbConnection.php');
    $this->db = new DbConnection();
    $this->db->Connect();

$query = "insert into items (item_name, item_qty, item_price) values ('".$item_name."', '".$item_qty."', '"$item_price"');

$query_safe = mysql_real_escape_string($query);
$this->db->Execute($query_safe);

Надеюсь, это поможет !!

0 голосов
/ 17 декабря 2009
foreach ($_SESSION['order'] as $values) {

 mysql_query('INSERT INTO tablename (name, qty, price) VALUES("'.$values['item-name'].'", "'.$values['item-qty'].'", "'.$values['item-price'].'"');
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...