|
|
|
การเก็บค่าเข้า database พร้อมกัน แต่คนละตาราง โดยใช้ไอดีที่ได้มาจากค่าตารางแรก ทำยังไงคะ |
|
|
|
|
|
|
|
ค่าตารางแรก
Code (SQL)
CREATE TABLE `strength` (
`strID` int(3) NOT NULL,
`strLevel` enum('+','++') NOT NULL,
`strItemRef` varchar(10) NOT NULL,
`strDescription` varchar(300) NOT NULL,
`itemID` int(3) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
Code (PHP)
if($_POST)
{
$strLevel = $_POST['level'];
$strItemRef = $_POST['itemref'];
$strDescription = $_POST['strDescription'];
$sql = "INSERT INTO strength(strLevel, strItemRef, strDescription,itemID)
VALUES ('".$strLevel."','".$strItemRef."','".$strDescription."','".$itemID."') ";
$objQuery = mysql_query($sql);
}
.....
if($_POST){
..... ต่อตรงนี้
}
ซึ่ง ตารางที่สอง ต้องเอาค่า strID ที่เป็น pk จากตารางแรกมา แล้วเก็บเข้าอีกตารางนึง แล้วก็เอาค่า keyID จาก checkbox มาเก็บใส่ เราสามารถ เขียนโค้ดแยกเก็บได้ป่าวคะ โดยทำต่อจาก if($_POST) เลย
Code (SQL)
CREATE TABLE `strengthkf` (
`strengthKFID` int(3) NOT NULL,
`keyID` int(3) NOT NULL,
`strID` int(3) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
Tag : PHP, MySQL, HTML/CSS, JavaScript
|
|
|
|
|
|
Date :
2016-03-19 01:31:37 |
By :
um0000um |
View :
1797 |
Reply :
9 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Code
CREATE TABLE `strength` (
`strID` int(3) NOT NULL , ## AUTOINCREMENT
`strLevel` enum('+','++') NOT NULL,
`strItemRef` varchar(10) NOT NULL,
`strDescription` varchar(300) NOT NULL,
`itemID` int(3) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
Code (PHP)
if($_POST)
{
$strLevel = $_POST['level'];
$strItemRef = $_POST['itemref'];
$strDescription = $_POST['strDescription'];
$sql = "INSERT INTO strength(strLevel, strItemRef, strDescription,itemID)
VALUES ('".$strLevel."','".$strItemRef."','".$strDescription."','".$itemID."') ";
$objQuery = mysql_query($sql);
/* *************************************** */
$strID=mysql_insert_id();
/* *************************************** */
foreach($_POST['chkbox'] as $key=>$value){
$sq1 = "insert into table2 set strID=$strID, .........");
mysql_query($sq1);
}
}
|
ประวัติการแก้ไข 2016-03-19 08:34:25 2016-03-19 08:35:06
|
|
|
|
Date :
2016-03-19 08:33:40 |
By :
Chaidhanan |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ตอบความคิดเห็นที่ : 1 เขียนโดย : Chaidhanan เมื่อวันที่ 2016-03-19 08:33:40
รายละเอียดของการตอบ ::
ค่าใน checkbox ให้เก็บได้หลา่ยค่าคะ แบบ strID=1 มี keyID 1,2,3
Code (PHP)
<tr>
<td valign="top">Relavant Keyfactor</td>
<td>
<?php
$sql = " SELECT relevantkf.keyID , keyfactor.keyName
FROM relevantkf INNER JOIN keyfactor ON relevantkf.keyID = keyfactor.keyID
INNER JOIN itemreview ON relevantkf.itemID = itemreview.itemID
WHERE itemreview.itemID ='$itemID' ";
// $sql = "SELECT unit.unitID ,unit.unitName FROM unit";
$objQuery = mysql_query($sql);
while($fetch = mysql_fetch_assoc($objQuery)){ ?>
<li>
<input type="checkbox" name="chkKey[]"
value="<?php echo $fetch["keyID"];?>"> <?php echo $fetch["keyName"];?>
</li>
<?php } ?>
</td>
</tr>
ค่า keyID ไ่ม่เข้าเลยค่ะ
Code (PHP)
if($_POST)
{
$strLevel = $_POST['level'];
$strItemRef = $_POST['itemref'];
$strDescription = $_POST['strDescription'];
$sql = "INSERT INTO strength(strLevel, strItemRef, strDescription,itemID)
VALUES ('".$strLevel."','".$strItemRef."','".$strDescription."','".$itemID."') ";
$objQuery = mysql_query($sql);
$strID = mysql_insert_id();
foreach($_POST['chkKey'] as $key=>$value)
{
$sq1 = "INSERT INTO strengthkf(keyID, strID)
VALUES ('".$chkKey[$i]."','".$strID."')";
mysql_query($sq1);
}
}
|
ประวัติการแก้ไข 2016-03-19 22:48:02
|
|
|
|
Date :
2016-03-19 22:46:07 |
By :
um0000um |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ได้แล้วค่ะ แก้เป็น
Code (PHP)
$sq1 = "INSERT INTO strengthkf(keyID, strID)
VALUES ('".$_POST['chkKey'][$key]."','".$strID."')";
$qr= mysql_query($sq1);
}
|
|
|
|
|
Date :
2016-03-19 22:57:07 |
By :
um0000um |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ก่อนจะให้แสดง check box mark ให้คูณก๊อปปี โค๊ดแบบตอนใส่ข้อมูลมาแสดงครับ
และเพิ่มตัวแปร if เข้าไปใน แต่ละ tag เพื่อแสดงค่าเช็ค
<input type=checkbox value="x1' name=chk <?=($result['chk1']=='x1' ? 'checked' : '')?> >
ประยุกต์เอาเองนะครับ value name $result กำหนดค่าให้ถูก
|
|
|
|
|
Date :
2016-03-20 09:17:37 |
By :
Chaidhanan |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
$result["keyID"] มันคืออะไรครับ
|
|
|
|
|
Date :
2016-03-21 06:24:58 |
By :
Chaidhanan |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Code (PHP)
<form action="check_save.php" method="POST" >
<tr>
<td valign="top">Relavant Keyfactor</td>
<td>
<?php
include("db_connect_edpex.php");
$sql = "SELECT * from keyfactor";
$objQuery = mysql_query($sql);
while($fetch = mysql_fetch_assoc($objQuery)){ ?>
<li>
<input type="checkbox" name="chkKey[]"
value="<?php echo $fetch["keyID"];?>"> <?php echo $fetch["keyName"];?>
</li>
<?php } ?>
<input type="submit" name="submit" id="submit" value="Submit"></td>
</tr>
</form>
โชว์ค่ามาทำเป็น check box
Code (PHP)
<?php //save strength into db
include("db_connect_edpex.php");
if($_POST)
{
foreach($_POST['chkKey'] as $key=>$value)
{
$strID =5;
$sq1 = "INSERT INTO strengthkf(keyID, strID)
VALUES ('".$_POST['chkKey'][$key]."','".$strID."')"; //get keyID into strKF table
$qr= mysql_query($sq1) or die(mysql_error());
}
}
?>
<?php
$sql = "SELECT DISTINCT strengthkf.keyID FROM strengthkf where strengthkf.strID =5";
$objQuery = mysql_query($sql);
while($result = mysql_fetch_array($objQuery)){
echo $result["keyID"];
$sql1 = "SELECT * from keyfactor";
$objQuery = mysql_query($sql1);
while($fetch = mysql_fetch_assoc($objQuery)){ ?>
<li>
<input type="checkbox" name="chkKey[]"
value= "<?php $fetch["keyID"];?>" <?=($result["keyID"] == $fetch["keyID"] ? 'checked' : '')?> />
<?php echo $fetch["keyName"];?>
</li>
<?php } ?>
<?php } ?>
มันมาแค่ค่าเดียวอ่าค่ะ แต่ถ้าลอง echo $result["keyID"]; จะมาครบ เช่น 1 2 3
|
|
|
|
|
Date :
2016-03-23 22:42:14 |
By :
um0000um |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 02
|