MySQL:UPDATE数据库,带有JQuery可排序的新值

时间:2013-03-15 16:53:18

标签: php mysql jquery-ui-sortable

我有这个:

foreach($_POST['pos'] as $value) {
   $new_value = "UPDATE users SET regnr='" . $value . "' 
   WHERE username='" . mysql_real_escape_string($_COOKIE['username']) . "'";
}

// Connect to database
$opendb = mysql_connect($dbhost, $dbuser, $dbpass) or die("Kunde inte ansluta till MySQL:<br>" . mysql_error());
mysql_select_db($dbname) or die("Kunde inte ansluta till databasen:<br>" . mysql_error());

mysql_query($new_value) or die(mysql_error());  

// Close database
mysql_close($opendb);

信息:

$_POST['pos']在隐藏输入中保存数据库中的值。我选择将此值与str_split($r['regnr'], 6);分割为JQuery可排序列表。如果我在foreach循环中键入echo $value;,我从JQuery可排序列表中获得了新值(不是我想要的分割)。我需要列表中的所有值,并使用echo得到它。但是如果我使用$value变量来更新它来自的数据库,它只会使用JQuery可排序列表中的最后一个值进行更新。

有人可以解决这个问题吗? :d

1 个答案:

答案 0 :(得分:1)

以下是解决方案:

$str = '';

foreach($_POST['pos'] as $value) {
  $str = $str.$value;
}

// Connect to database
$opendb = mysql_connect($dbhost, $dbuser, $dbpass) or die(mysql_error());
mysql_select_db($dbname) or die(mysql_error());

$new_value = "UPDATE users SET regnr='" . $str . "' WHERE username='" . mysql_real_escape_string($_COOKIE['username']) . "'";
mysql_query($new_value) or die(mysql_error());

// Close database
mysql_close($opendb);