|
|
|
ถ้าเรื่อง array หน่องดิว่าพอลงในฐานข้อมูลแล้วทำไมมันเรียงลงไปหลาย record อะ ตอบหน่อยนะคนเก่ง |
|
|
|
|
|
|
|
เอ่อมีโค้ดให้ดูไม๊คะ
|
|
|
|
|
Date :
2010-07-02 13:44:12 |
By :
tiggerOne |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
พอลงไปแล้วมันลงไปหลาย record อะ ทำไงดีครับ
Code (PHP)
<?php
require('config2.inc.php');
mysql_query("SET NAMES UTF8");
/*วน loop นำข้อมูลจาก Array insert ลงฐานข้อมูลทีละตัว*/
$PLATE_NUMBER3=$_POST['PLATE_NUMBER3'];
foreach($PLATE_NUMBER3 as $plate_data){
$sql="INSERT INTO dlt_license_car (plate_number) VALUES('".$plate_data."')";
$query=mysql_query($sql)or die(mysql_error());
}
?>
|
|
|
|
|
Date :
2010-07-02 13:48:52 |
By :
เด็กหัดเทพ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ลองศึกษาดูตาม link นี้นะคะ
|
|
|
|
|
Date :
2010-07-02 14:23:30 |
By :
tiggerOne |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
มันขึ้นอย่างนี้เป็นเพราะอะไรตอบหน่อยสิครับ
|
|
|
|
|
Date :
2010-07-02 15:06:24 |
By :
เด็กหัดเทพ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
โครงสร้าง array $PLATE_NUMBER3 = $_POST['PLATE_NUMBER3']; ตรงนี้
เป้นกี่ มิติครับ
ก่อน insert ลอง
echo $sql ดูก่อนดีมั้ยครับ ว่ารูปแบบถูกต้องรึเปล่า น่าจะช่วยให้มองออกได้ง่ายขึ้นครับ
|
|
|
|
|
Date :
2010-07-02 15:22:25 |
By :
ขนมหม้อแกง |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
โค้ดนี้นะที่เป็นอย่างข้างบนอะครับช่วยแก้หน่อยนะครับ
Code (PHP)
<?php
require('config2.inc.php');
mysql_query("SET NAMES UTF8");
$PLATE_NUMBER3 = array($_POST['PLATE_NUMBER3']);
$plate_data = serialize($PLATE_NUMBER3);
$query = "INSERT INTO dlt_license_car(plate_number) VALUES('$plate_data')";
mysql_query($query);
?>
|
|
|
|
|
Date :
2010-07-02 15:28:30 |
By :
เด็กหัดเทพ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ขึ้นอย่างนี้แล้วจะแก้อย่างไง
จากโค้ดนี้ช่วยแก้ให้หน่อยนะ
Code (PHP)
<?php
require('config2.inc.php');
mysql_query("SET NAMES UTF8");
$PLATE_NUMBER3=$_POST['PLATE_NUMBER3'];
$plate_data = serialize($PLATE_NUMBER3);
$query = "INSERT INTO dlt_license_car(plate_number) VALUES('$plate_data')";
mysql_query($query);
?>
|
|
|
|
|
Date :
2010-07-02 15:50:13 |
By :
เด็กหัดเทพ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
งง น่ะ แต่อันนี้ใช้เป็นตัวอย่างได้เปล่า
<?php
// array2
if($_POST['_submit']){
$_i = 0; $_arr_ckbox = array();
while($_i < sizeof($_POST['_ckbox'])){
$_arr_ckbox[$_i] = $_POST['_ckbox'][$_i];
++$_i;
}
// กรณีว่าเราไม่รู้ว่า user เลือก checkbox กี่ตัวอยากให้ใช้ serialize() ครับเพราะจะเปลี่ยน Array เป็น string ยาวๆ ต่อกัน
$_str = serialize($_arr_ckbox);
print_r(unserialize($_str));
// or
// กรณี ใช้ JSON ในอนาคตอาจใช้ AJAX
// $_str = json_encode($_arr_ckbox); // echo $_json_encode;
// print_r(json_decode($_str));
//---- include 'db.inc.php';
// $_db = ...
// $_sql = sprintf("INSERT INTO places(str) VALUES('%s')", mysql_real_escape_string($_str));
// mysql_query($_sql, $_db);
// --- End ---
}
?>
<html>
<head>
<title></title>
</head>
<body>
<div id="contents">
<form action="" method="post" >
_ckbox1 <input type="checkbox" name="_ckbox[]" value="_1">
_ckbox2 <input type="checkbox" name="_ckbox[]" value="_2">
_ckbox3 <input type="checkbox" name="_ckbox[]" value="_3">
_ckbox4 <input type="checkbox" name="_ckbox[]" value="_4">
_ckbox5 <input type="checkbox" name="_ckbox[]" value="_5">
_ckbox6 <input type="checkbox" name="_ckbox[]" value="_6">
_ckbox7 <input type="checkbox" name="_ckbox[]" value="_7">
<br >
<input type="submit" name="_submit" value="ok">
</form>
</div>
</body>
</html>
|
|
|
|
|
Date :
2010-07-02 22:47:23 |
By :
mrjidjad |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ทำแล้วก็ขึ้นเหมือนเดิม
Code (PHP)
<?php
// กรณีที่เราไม่รู้ขนาดของ Array ครับ
$_arr_post=$_POST['PLATE_NUMBER3'];
// $_arr_post[ ]
// . . . more
$_serialize = serialize($_arr_post);
$_db = mysql_connect('localhost', 'root', 'root') or die(' -- '); mysql_select_db('NEW', $_db);
mysql_set_charset('tis620');
$_sql =sprintf("INSERT INTO dlt_license_car(plate_number) VALUES('%s')", mysql_real_escape_string($_serialize));
$_query = mysql_query($_sql, $_db); if(!$_query) die(mysql_errno($_db).' : '.mysql_error($_db));
?>
|
|
|
|
|
Date :
2010-07-03 07:18:54 |
By :
เด็กหัดเทพ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
แบบนี้ครับ
<?php
// กรณีที่เราไม่รู้ขนาดของ Array ครับ
// $_arr_post=$_POST['PLATE_NUMBER3'];
// $_arr_post[ ]
// . . . more
// $_serialize = serialize($_arr_post);
$_db = mysql_connect('localhost', 'username', 'password') or die(' -- '); mysql_select_db('places', $_db);
mysql_set_charset('tis620');
// $_sql =sprintf("INSERT INTO dlt_license_car(plate_number) VALUES('%s')", mysql_real_escape_string($_serialize));
// $_query = mysql_query($_sql, $_db); if(!$_query) die(mysql_errno($_db).' : '.mysql_error($_db));
// ถูกต้องแล้วครับจุดประสงค์คือ ต้องใส่ค่า $_serialize ลงใน ฟิว plate_number
// มันก็เข้าไปทั้งก้อน
// ดังนั้นเวลาคุณจะ query ข้อมูลออกมามันต้อง unsrialize() กลับ
//--- query
$_sql = "select name from places where id > 25";
$_query = mysql_query($_sql, $_db);
$i = 0; $_arr = array();
while($_result = mysql_fetch_assoc($_query)){
$_arr[$i]['name'] = unserialize($_result['name']);
++$i;
}
// --- view
$_echo = ' ';
foreach($_arr as $_val){
$_echo .= $_val['name']['_name'];
$_echo .= $_val['name']['_pwd'];
$_echo .= $_val['name']['_tel'];
$_echo .= $_val['name']['_addr'];
$_echo .= '<br>';
}
echo $_echo;
// ประยุกต์ดูครับ
?>
|
|
|
|
|
Date :
2010-07-03 19:00:15 |
By :
mrjidjad |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 01
|