English 中文(简体)
PHP 如何在数据库中节省检查箱的价值?
原标题:PHP how to save checkbox value in database?

我用核对箱表,从数据库中检索:

<?php
$result = mysql_query("SELECT shop_id, name FROM shop") or die(mysql_error());

if(mysql_num_rows($result) > 0)
{
    while($row = mysql_fetch_assoc($result)) 
    {
        echo  <tr> 
                  <td>
                      <input type="checkbox" name="identifer[]" value=" .$row[ shop_id ]. " /> <br />
                  </td>  
                  <td> .ucfirst($row[ shop ]). </td> 
              </tr>    ;    
     }
}
?>

我想节省数据库中的成果:

  • Table: places
  • Columns: places_id, book_id, shop_id

However, I can t get it to work right. In shop_id column I get the same number as many times as checkboxes are checked.

如果是我这样说的话:

$identifer = $_POST[ identifer ];
if( count( $identifer) > 1)
{
    foreach($identifer as $x)
    {
        $y .= $x.",";
        $val = rtrim($y,",");
        $q2 = "INSERT INTO places (places_id, book_id, shop_id) VALUES (NULL,  $book_id ,  $val )";
        $result2 = mysql_query($q2) or die(mysql_query());
    }
}

在<条码>中,表一只一行,不管检查箱的次数多。

So what is the correct way to do that?

最佳回答

我认为,这是你回顾的:

$identifier = $_POST[ identifer ]; // Also, you spelled identifier wrong ;)
// There s no guarantee that you were given an array for identifier
if( is_array( $identifier) && count( $identifier) > 1)
{
    $values = array();
    // This creates a bunch of insert values
    foreach($identifier as $x)
    {
        $values[] = "(NULL,  $book_id ,  $x )";
    }

    // Join all those values together into one SQL query (this will generate multiple rows)
    $q2 = "INSERT INTO places (places_id, book_id, shop_id) VALUES " . implode(  ,  , $values);
    $result2 = mysql_query($q2) or die(mysql_query());
}
问题回答

暂无回答




相关问题
SQL SubQuery getting particular column

I noticed that there were some threads with similar questions, and I did look through them but did not really get a convincing answer. Here s my question: The subquery below returns a Table with 3 ...

难以执行 REGEXP_SUBSTR

I m 查询Oracle 10g。 我有两张表格(样本数据见下文)。 i m 试图提取一些领域

SQL Query Shortcuts

What are some cool SQL shorthands that you know of? For example, something I learned today is you can specify to group by an index: SELECT col1, col2 FROM table GROUP BY 2 This will group by col2

PHP array callback functions for cleaning output

I have an array of output from a database. I am wondering what the cleanest way to filter the values is example array Array ( [0] => Array ( [title] => title 1 ...

OracleParameter and DBNull.Value

we have a table in an Oracle Database which contains a column with the type Char(3 Byte). Now we use a parameterized sql to select some rows with a DBNull.Value and it doesn t work: OracleCommand ...

Running numbers in SQL

I have a SQL-statement like this: SELECT name FROM users WHERE deleted = 0; How can i create a result set with a running number in the first row? So the result would look like this: 1 Name_1 2 ...

How to get SQL queries for each user where env is production

I’m developing an application dedicated to generate statistical reports, I would like that user after saving their stat report they save sql queries too. To do that I wrote the following module: ...

热门标签