|
|
|
ถามเรื่องจากเรียกข้อมูลจาก ตาราง หนึ่งมาเพิ่มในอีก ตาราง หนึ่งครับ (ทำได้แล้วครับขอบคุณพี่ เข้ กับพี่ Cop และผู้เกี่ยวข้องครับ) |
|
|
|
|
|
|
|
ใช้ INSERT SELECT ก็ได้ครับ
|
|
|
|
|
Date :
2014-07-24 09:03:22 |
By :
mr.win |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ลองแบบนี้
Code (PHP)
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<?
require('connect.php');
?>
<?php
//$Budgetyear = $_GET["yaer"];
//$yearid = " SELECT BudgetyaerID FROM tbbudgetyear WHERE Budgetyear = '".$Budgetyear."'";
//echo "$yearid" ;
$max = count($_POST["BudgettypeID"]);
for($i=0; $i < $max; ++$i)
{
$strSQL = "INSERT INTO tbbudgetcategory ";
$strSQL .="(BudgettypeID,Budgetcategoryamount) ";
$strSQL .="VALUES ('".$_POST["BudgettypeID"][$i]."','".$_POST["txtbudgettypemoney"][$i]."')";
$objQuery = mysql_query($strSQL);
$strSQL = "INSERT INTO tbbudgetcategory (BudgetyearID) SELECT BudgetyaerID FROM tbbudgetyear WHERE Budgetyear = '".$Budgetyear."'";
$objQuery = mysql_query($strSQL);
}
echo "<script language='javascript'>alert('บันทึกข้อมูลเรียบร้อยแล้ว');</script>";
//echo "<meta http-equiv='refresh' content='0;url=menu_budget.php' />";
?>
|
|
|
|
|
Date :
2014-07-24 16:46:12 |
By :
chai19 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
เดาจากโค้ดแรก
โดย เงื่อนไขคือ เมื่อ "ค่าปีที่รับ"มา ตรงกับ ค่าปีที่มีใน ตารางtbbudgetyear
จากนั้น INSERT ข้อมูลจาก ตารางtbbudgetyear ลง ตารางtbbudgetcategory มากกว่า
*ตารางtbbudgetype ไม่เกี่ยว*
ดังนั้นขอดู ตารางtbbudgetyear
|
|
|
|
|
Date :
2014-07-24 21:54:47 |
By :
chai19 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ขอดูหน้าที่ส่งมา
กับฟอร์มหน้า Insert นี้หน่อยครับ
แล้ว ต้องการให้ทำงานแบบไหนเหรอครับ Insert multi เหรอ ผมอ่านไม่เข้าใจครับ งง
|
|
|
|
|
Date :
2014-07-24 21:57:09 |
By :
sabaitip |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ลองดูก่อนนะ ไม่แน่ใจ
ในฟอร์มก็สร้าง hidden ขึ้นมาตัวนึงครับ
Code (PHP)
<input type="hiden" name="txtbudgetyearID" value="<?=$Budgetyear;?>"/> // ใส่ค่าตัวแปร i เหมือนอันอื่นด้วยนะ
Code (PHP)
// ในนี้ก็รับค่าจาก hidden ด้วย
<?php
$Budgetyear = $_GET["year"];
$max = count($_POST["BudgettypeID"]);
for($i=0;$i<$max;++$i)
{
$strSQL = "INSERT INTO tbbudgetcategory";
$strSQL .= " (BudgettypeID,Budgetcategoryamount)";
$strSQL .= " VALUES ('".$_POST["BudgettypeID"][$i]."', '".$_POST["txtbudgettypemoney"][$i]."', '".$_POST["txtbudgetyearID"][$i]."')";
$objQuery = mysql_query($strSQL);
}
echo "<script language='javascript'>alert('บันทึกข้อมูลเรียบร้อยแล้ว');</script>";
?>
|
ประวัติการแก้ไข 2014-07-24 23:21:05 2014-07-25 00:05:10
|
|
|
|
Date :
2014-07-24 23:20:30 |
By :
sabaitip |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
งง..."โดยผมจะเอา BudgetyearID จากตารางนี้ไปใส่ ตาราง BudgetyearID ของอีกตารางคับ"
ผมสรุปตามความเข้าใจของผม
เมื่อ "ค่าปีที่รับ"มา ตรงกับ ค่าปีที่มีใน ตารางtbbudgetyear
จากนั้น INSERT ข้อมูลจาก ตารางtbbudgetyear ลง ตารางtbbudgetcategory
โดย BudgetypelD (ตาราง tbbudgetcategory) = ...............................(ตาราง.....................)
Budgetcategoryamount (ตาราง tbbudgetcategory) = ฺBudgetyearmoney (ตาราง tbbudgetyear)
BudgetyearID (ตาราง tbbudgetcategory) = BudgetyearlD (ตาราง tbbudgetyear)
ผมเข้าใจถูกไหม?
แล้วลงข้อมูล ..............................(ตาราง.....................) ให้ผมด้วย
|
|
|
|
|
Date :
2014-07-24 23:25:11 |
By :
chai19 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
categoryadd.php ครับ ใส่รวมอินพุทอื่นๆเลยครับ
ใส่ BudgetyearID อีกตัวนึง ลืมไป ไม่รู้จะได้ป่าวลองดูก่อนนะ
Code (PHP)
$strSQL .= " (BudgettypeID, Budgetcategoryamount, BudgetyearID)";
ถ้ายังไม่ได้ จัดโค๊ด ทั้ง 2 ฟอร์มมาดูหน่อยครับ
|
ประวัติการแก้ไข 2014-07-25 00:07:17
|
|
|
|
Date :
2014-07-25 00:02:56 |
By :
sabaitip |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
จากข้อมูลที่ได้ล่าสุด
ผมสรุปตามความเข้าใจของผม
1. กรอกข้อมูล ในไฟล์ budgetadd.php
จากนั้น INSERT ข้อมูลจาก ลง tbbudgetyear และส่งปีงบประมาณไปที่ไฟล์ categoryadd.php
2. กรอกข้อมูล ในไฟล์ categoryadd.php
จากนั้น INSERT ข้อมูลจาก ลง ตารางtbbudgetcategory
โดย
BudgetcategorylD = Auto
BudgetypelD = $_POST["BudgettypeID"][$i]
Budgetcategoryamount = $_POST["txtbudgettypemoney"][$i]
BudgetyearID = BudgetyearlD (ตาราง tbbudgetyear) ซึ่งมีค่า 34(ปี2557)
ผมเข้าใจถูกไหม?
|
|
|
|
|
Date :
2014-07-25 00:11:34 |
By :
chai19 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ลองดูค่าBudgetyearlD มาไหม
Code (PHP)
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<?
require('connect.php');
?>
<?php
$Budgetyear = $_GET["yaer"];
$yearid = " SELECT * FROM tbbudgetyear where Budgetyear like '$Budgetyear' ";
$result=mysql_query($yearid);
while ($r=mysql_fetch_array($result))
{
$BudgetyearID=$r[BudgetyearID];
}
$max = count($_POST["BudgettypeID"]);
for($i=0; $i < $max; ++$i)
{
$strSQL = "INSERT INTO tbbudgetcategory ";
$strSQL .="(BudgettypeID,Budgetcategoryamount,BudgetyearID) ";
$strSQL .="VALUES ('".$_POST["BudgettypeID"][$i]."','".$_POST["txtbudgettypemoney"][$i]."','".$BudgetyearID."')";
$objQuery = mysql_query($strSQL);
}
echo "<script language='javascript'>alert('บันทึกข้อมูลเรียบร้อยแล้ว');</script>";
?>
|
|
|
|
|
Date :
2014-07-25 00:36:39 |
By :
chai19 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
เทสดูหน่อยได้ป่าว
categoryadd บรรทัด 85 เปลี่ยน text เป็น hidden
พวก header footer ผมคอมเม้นไว้นะ เอาออกเองนะ
budgetadd
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
</head>
<?
require("connect.php");
?>
<?php
$sql="SELECT * FROM tbbudgettype";
$result=mysql_query($sql,$conn);
mysql_query("SET NAMES UTF8");
$rs = mysql_fetch_array($result);
?>
<table align="center" width="1150" border="0" cellspacing="0" cellpadding="0">
<tr>
<td><? //require('head.php') ?></td>
</tr>
<tr height="300">
<td bgcolor="#F8F8F8" height="300"align="center">
<form name="form1" method="post" action="budget_saveadd.php">
<table width="809" height="99" border="1" align="center" cellpadding="0" cellspacing="0" bgcolor="#F8F8F8">
<thead>
<tr>
<td width="128" height="28" class="style2">ปีงบประมาณ</td>
<td><input type="text" name="txtbudget" id="txtname3" />
</td>
</tr>
</thead>
<tr>
<td height="31" class="style2">จำนวนงบประมาณ</td>
<td><input type="text" name="txtmoney" id="txtname5" /></td>
</tr>
</table>
<p>
<input type="submit" name="button" id="button3" value="ตกลง" />
<input name="edit_id" type="hidden" id="edit_id" value="<?=$_REQUEST['edit_id']?>" />
<input type ="reset" name="button2" id="button4" value="ยกเลิก" />
</p>
<p> </p>
</form></td></tr></table>
<p><? //require("footer.php");?> </p>
</html>
budget_saveadd
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<?
require("connect.php");
?>
<?
$txtbudget = $_POST['txtbudget'];
$txtmoney = $_POST['txtmoney'];
$sql = "INSERT INTO tbbudgetyear (Budgetyear, Budgetyearmoney)VALUES('$txtbudget','$txtmoney')";
$result = mysql_query($sql,$conn);
echo "<script>alert('บันทึกข้อมูลเรียบร้อยแล้ว');window.location='categoryadd.php?year=$txtbudget';</script>";
?>
categoryadd
<style type="text/css">
<!--
.style1 {
font-family: "TH SarabunPSK";
font-size: 18pt;
font-weight: bold;
}
.style2 {
font-family: "TH SarabunPSK";
font-size: 16pt;
font-weight: bold;
}
.style5 {cursor: hand; font-weight: normal; color: #000000;}
.style9 {font-family: Tahoma; font-size: 12px; }
.style11 {font-size: 12px}
.style13 {font-size: 9}
.style16 {font-size: 9; font-weight: bold; }
.style17 {font-size: 12px; font-weight: bold; }
-->
</style>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
</head>
<script type="text/javascript" src="jquery-1.11.1.min.js"></script>
<script type="text/javascript">
$(document).ready(function(){
$('#add_item').click(function(){
$('#mytbl tbody tr ').last().clone().appendTo('#mytbl tbody');
});
});
function doRemoveItem(obj){
if($('#mytbl tbody tr').size() > 1){
if(confirm('คุณต้องการลบแถวนี้?')) $(obj).parent().parent().remove();
}else{
alert('ไม่อนุญาตให้ลบแถวที่เหลือนี้ได้');
}
}
</script>
<?
require("connect.php");
?>
<table align="center" width="1150" border="0" cellspacing="0" cellpadding="0">
<tr>
<td><? //require('head.php') ?></td>
</tr>
<tr height="300">
<td bgcolor="#F8F8F8" height="300"align="center">
<form name="form1" method="post" action = "category_saveadd.php">
<table width="809" height="30" border="1" align="center" cellpadding="0" cellspacing="0" bgcolor="#F8F8F8">
<thead>
<tr>
<td width="128" height="28" class="style2">ปีงบประมาณ :
<label for="textfield"></label>
<?php echo $_GET["year"]."<br>";?>
</td>
</tr>
</thead>
</table>
<table width="809" border="1" id = "mytbl">
<thead>
<tr>
<td colspan="5"><label for="textfield2"></label></td>
</tr>
</thead>
<tbody>
<tr >
<td width="101"><span class="style2">หมวดงบประมาณ</span></td>
<td width="41"><select name="BudgettypeID[]">
<?
mysql_query("SET NAMES UTF8");
$result = mysql_query("SELECT * FROM tbbudgettype");
while($row = mysql_fetch_array($result)){
?>
<option value="<?=$row['BudgettypeID']; ?>"><?=$row['Budgettype'];?></option>
<? }?>
</select></td>
<td width="110"><span class="style2">จำนวนเงินในหมวด</span></td>
<td width="144">
<input type="text" name="txtbudgettypemoney[]"/>
<input type="text" name="txtbudgetyearID[]" value="<?=$_GET["year"];?>"/>
</td>
<td width="8"><button onclick="javascript:doRemoveItem(this);" style="width:22px;">-</button></td>
</tr>
</tbody>
</table>
<table width="809" border="1">
<tr>
<td><button type="button" id="add_item" name="button" id="button" ><img src="picture/add.png" width="16" height="16" align="absmiddle" />เพิ่มหมวดหมู่</button></td>
</tr>
</table>
<p> </p>
<p>
<input type="submit" name="button" id="button3" value="ตกลง" />
<input type ="reset" name="button2" id="button4" value="ยกเลิก" />
</p>
<p> </p>
</form></td></tr></table>
<p> </p>
</html>
category_saveadd
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<?
require("connect.php");
?>
<?php
$max = count($_POST["BudgettypeID"]);
for($i=0;$i<$max;++$i)
{
$strSQL = "INSERT INTO tbbudgetcategory";
$strSQL .= " (BudgettypeID, Budgetcategoryamount, BudgetyearID)";
$strSQL .= " VALUES ('".$_POST["BudgettypeID"][$i]."', '".$_POST["txtbudgettypemoney"][$i]."', '".$_POST["txtbudgetyearID"][$i]."')";
$objQuery = mysql_query($strSQL);
}
echo "<script>alert('บันทึกข้อมูลเรียบร้อยแล้ว');</script>";
//echo "<meta http-equiv='refresh' content='0;url=menu_budget.php' />";
?>
|
ประวัติการแก้ไข 2014-07-25 00:56:36 2014-07-25 01:00:14
|
|
|
|
Date :
2014-07-25 00:53:47 |
By :
sabaitip |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ไฟล์ categoryadd.php บรรทัดที่ 059 มันผิด อยู่ดีๆ ก็ใส่ค่า txtbudgetyearID[] มาเลย
ทำให้เวลาบันทึกมันหาไม่เจอ
|
|
|
|
|
Date :
2014-07-25 00:55:07 |
By :
chai19 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
เอ้า 555 เอา ไป where แบบคุณเข้นั่นแหละครับ
แต่แบบของผมก็เอานี่ไปใส่คล้ายกัน แต่มันแลจะยุ่งยากไป ไม่รู้ มึน
Code (PHP)
<td width="144">
<?
$sql = " SELECT * FROM tbbudgetyear WHERE Budgetyear = '".$_GET["year"]."'";
$result = mysql_query($sql);
$row = mysql_fetch_array($result);
?>
<input type="text" name="txtbudgettypemoney[]"/>
<input type="hidden" name="txtbudgetyearID[]" value="<?=$row['BudgetyearID'];?>"/>
</td>
|
ประวัติการแก้ไข 2014-07-25 01:25:36
|
|
|
|
Date :
2014-07-25 01:15:26 |
By :
sabaitip |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 02
|