Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone
 

Registered : 109,027

HOME > PHP > PHP Forum > PHP SQL ต้องการจะดึงค่าจาก 2 ตาราง มา insert อีกตารางหนึ่่ง



 

PHP SQL ต้องการจะดึงค่าจาก 2 ตาราง มา insert อีกตารางหนึ่่ง

 



Topic : 100443



โพสกระทู้ ( 31 )
บทความ ( 0 )



สถานะออฟไลน์




ตอนนี้ ผมสร้างหน้า php ไว้ โดยการทำงานของ php มีดังนี้

1. รับค่าจากแอนดรอย แล้ว insert into productorder (อันนี้ไม่มีปัญหา)

2. SELECT order_id FROM productorder (เพื่อเอาค่า auto_increment) where member_id = '$member_id'

2.1 ผมเก็บค่าเพื่อจะมาใช้งานถูกวิธีไหมครับ $order_info (รหัสใบสั่งซื้อ)

3. SELECT * FROM transaction (ค่าในนี้มีหลายแถว) where member_id = '$member_id'

3.1 ผมเก็บค่าเพื่อจะมาใช้งานถูกวิธีไหมครับ $transaction_info

4. INSERT INTO detailorder โดยค่าแรก เป็น null(auto_increment)
,$order_info() ค่าที่ดึงมาจากข้อ 2.
,$transaction_info(product_code) ค่าที่ดึงมาจากข้อ 3 ชื่อคอลัม product_code
,$transaction_info(quantity) ค่าที่ดึงมาจากข้อ 3 ชื่อคอลัม quantity
,$transaction_info(price) ค่าที่ดึงมาจากข้อ 3 ชื่อคอลัม price

เข้าใจว่าการทำงานนี้ต้อง วน loop เพื่อ insert ค่าลงที่ละ แถว


5.หลักจากinsert ค่าเสดแล้ว ก็ DELETE transaction


อันนี้ที่ผมทำ คิดไม่ออกจริงๆครับว่าจะทำยังไง ติดตรงนี้ นั่งคิด ตั้งแต่เช้าแล้วครับ รบกวนพี่ด้วยนะครับ
Code (PHP)
<?php
	
	require("libs/connection_to_abc.php");
	mysql_query("SET character_set_results=utf8");
	mysql_query("SET character_set_client=utf8");
	mysql_query("SET character_set_connection=utf8");
	
	$member_id = $_POST["member_id"];
	$name = $_POST["name"];
	$address = $_POST["address"];
	$total_price = $_POST["total_price"];
	$date_order = date("Y-m-d");
	
	
	
	mysql_query("INSERT INTO productorder VALUES (NULL,'$member_id', '$name', '$address', '$total_price','$date_order')") or die (mysql_error());
	
	$getOrder = mysql_query("SELECT order_id FROM productorder WHERE member_id = '$member_id'") or die (mysql_error());
	$order_info = mysql_fetch_array($getOrder, MYSQL_NUM);
	
	
	
	$getTransaction = mysql_query("SELECT * FROM transaction WHERE member_id = '$member_id'") or die (mysql_error());
	$transaction_info = mysql_fetch_array($getTransaction, MYSQL_NUM);
	
	
	
	$insert_detail = mysql_query("INSERT INTO detailorder VALUES(NULL,'$order_info[0]','$product_code','$quantity','$price')")or die (mysql_error());
	
	
	
	$delete_transaction = mysql_query("DELETE FROM transaction WHERE member_id = '$member_id'") or die (mysql_error());
	
	echo "DELETED.";
	
	
	
	mysql_close($link);
?>






Tag : PHP









ประวัติการแก้ไข
2013-09-13 18:07:26
Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2013-09-13 18:07:05 By : littlemonkeyz View : 15003 Reply : 15
 

 

No. 1



โพสกระทู้ ( 1,666 )
บทความ ( 0 )



สถานะออฟไลน์


ตาราง transaction ทำหน้าที่อะไรบ้างครับเก็บอะไรบ้างครับ ?
ทำใมเวลา INSERT ลงตาราง detailorder แล้วต้องลบมันทิ้งด้วย มันไม่ดีเลยนะการ drop เนี่ยทำให้ระบบเราเช็คข้อมูลอะไรย้อนหลังได้ยาก






แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-09-13 19:15:36 By : meannerss
 


 

No. 2



โพสกระทู้ ( 31 )
บทความ ( 0 )



สถานะออฟไลน์


ลบเพราะ มันเป็นตาราง ที่ไว้เก็บค่าชั่วคราว ของรายการสินค้าที่ได้ทำการเลือกครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-09-13 19:26:13 By : littlemonkeyz
 

 

No. 3



โพสกระทู้ ( 1,666 )
บทความ ( 0 )



สถานะออฟไลน์


เดี๋ยวนะครับขอทำความเข้าใจก่อน โค้ดทั้งหมดที่กล่าวมานี่ เกิดในหน้าเดียวกันเลยไช่ไหมครับ
พรรณาลักษณะงาน หรือ ตัดหน้าจอของฟอร์ม มาให้ดูหน่อยสิครับ ไม่เห็นภาพเลย

ผมงงตรงทำใมมันซับซ้อนซ่อนเงื่อนจัง ในฟอร์มเดียว INSERT เข้าเข้าตาราง A พอเสร็จ ย้ายข้อมูลจาก A ไป B แล้วลบจาก A
ทั้งๆที่มันก็เป็นฟอร์มเดียวกัน ทำใมไม่โยนเข้าไปในตาราง B เลย ทำใมต้องไปพักที่ A ก่อนนะงงมาก เพราะพอทำเสร็จกบลบทิ้งจาก A ด้วย


ประวัติการแก้ไข
2013-09-13 19:47:01
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-09-13 19:41:44 By : meannerss
 


 

No. 4



โพสกระทู้ ( 31 )
บทความ ( 0 )



สถานะออฟไลน์


อธิบายการทำงาน
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-09-13 20:16:08 By : littlemonkeyz
 


 

No. 5



โพสกระทู้ ( 31 )
บทความ ( 0 )



สถานะออฟไลน์


ที่ทำแบบนี้ เพราะตารางนี้มัน ตารางเก็บรายละเอียดสินค้าที่ลุกค้าเลือก ทิ้งไว้ในตะกร้าสินค้ายังไม่ได้ กดยืนยันการสั่งซื้อ

ถ้าลุกค้ายังไม่ยืนยันการสั่งซื้อ รายละเอียดสินค้าก็ยังอยู่ และสามารถไปล้อกอิน เครื่องอื่นแล้วดูรายการที่ได้ทำการเลือกก่อนหน้านี้ได้

พอลุกค้ายืนยันการสั่งซื้อปุ๊บ ก็จะทำการเพิ่มค่า ไปในตารางที่เก็บ ข้อมูลการสั่งซื้อและรายละเอียดสินค้าที่สั่งซื้อ และลบค่าที่อยู่ในตะกร้าสินค้าออกไป

หลักการทำงานคล้ายๆ เก็บข้อมูลตะกร้าสินค้าไว้ใน session แต่แบบนั้นมันเก่า และไม่สามารถ เปิดดูที่อื่นได้ (อ.ผมบอกแบบนี้อ่ะครับ)
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-09-13 20:21:19 By : littlemonkeyz
 


 

No. 6



โพสกระทู้ ( 1,666 )
บทความ ( 0 )



สถานะออฟไลน์


อ่อ เหมือนร้านอาหารที่ผมทำอยู่เลยครับ ผมก็ไม่นิยมเก็บ session . . . นานๆจะเจอคนทำเหมือนผมซะที 5 5

เอาหละ อ สมมุติว่าผมเป็นลูกค้า สั่งของ 10 ชั้น ใน 1 บิล. . . . (1 Order ID นั่งเอง) ถูกไหมครับ

Code (PHP)
$member_id = 001;  //ไอดีผม 001
$name = Nicolas_cage; // ชื่อผมนิโคลัส เคจ
$address = USA; // อยากอยู่เมกา
$total_price = 100; // Total price  นี่ต้องเป็นค่ารายการต่างๆรวมกันเสร็จแล้วไช่ไหมครับ
$date_order = วันนี้เหละ;  

//ข้างล่างนี้จะเกิดได้ลูกค้าต้อง Confirm รายการซื้อแล้วถูกไหมครับ  
mysql_query("INSERT INTO productorder VALUES (NULL,'$member_id', '$name', '$address', '$total_price','$date_order')") or die (mysql_error());

.
.
.
// อื่นๆขอละไว้ก่อน



ตอนนี้ขอคุยถึงบรรทัดนี้ก่อน mysql_query ตัวด้านบนนี้ต้องเกิดก่อน เพราะมันเป็นแม่ . . . ไม่ได้มาเกิดตรงนี้ และจะมีสิ่งที่เกิดก่อนหน้านั้นคือรายการในบิลนี้ มาถึงตรงนี้ ไอ้หย๋า ตารางลูกเกิดก่อนตารางแม่นี่หว่า แล้วลูกเกิดก่อนแม่แบบนี้จะเอา ID แม่ไป Refได้ยังไงละเนี่ย . . .

วิธีแก้ปัญหาติดตามตอนต่อไป
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-09-13 20:39:23 By : meannerss
 


 

No. 7



โพสกระทู้ ( 31 )
บทความ ( 0 )



สถานะออฟไลน์


คือรายละเอียดสินค้าที่ลุกค้า เลือกเก็บไว้ในตะกร้า(transaction) อ่ะครับ ผมได้ดึงค่าแล้วเอาแอนดรอย คำนวณหาผลรวมมา แล้วก็ส่งมาให้ insert ใน ตาราง productorder อ่ะครับที่ส่งมาเพื่อที่จะเอา Order_id ที่มันเป็น auto_increment เพื่อที่จะได้เอาไปอ้างอิงกับ ตารางรายละเอียดสินค้าที่สั่งซื้อ (detailorder ) ก่อนที่จะมาหน้านี้ ลูกค้าได้กดปุ่ม confirm ในแอนดรอยแล้วว่ายืนยันการสั่งซื้อ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-09-13 20:49:27 By : littlemonkeyz
 


 

No. 8



โพสกระทู้ ( 1,666 )
บทความ ( 0 )



สถานะออฟไลน์


วิธีแก้ปัญหาของผมคือ
1.ให้สมาชิกมีบิลเปล่าในมือคนละ 1 ใบ เพราะต้องมีใบสั่งไช่ไหมถึงจะสั่งสินค้าได้ ดังนั้นใบสั่งต้องผลิตมาก่อนก่อนรายการที่จะเขียนในนั้น (จะสั่งซื้อไม่สั่งซื้อก็เรื่องของเขา)
และเพิ่มฟิล status [ระบุ 0 = ยังไม่ยืนยัน 1=ยืนยัน] เข้าไปในตาราง productorder
หลักการคือ. . . เมื่อเค้าสมัครสมาชิกเข้ามา(เดาว่ามีการสมัคร เพราะเก็บรายการสั่งซื้อลง DB ต้องมีตัว ID MEMBER ชี้เป้าแน่ๆ)
เมือเค้าสมัครสมาชิกมา ให้ INSERT INTO ตาราง productorder ไปเลย ยอดรวมและวันที่ให้เป็นค่าว่างไว้ก่อน และ สถานะ status=0

2. เมื่อเค้าเลือกสินค้าเข้ามา (เดาว่าตาราง order_id ) ทำการ INSERT รายการสั่งเข้า order_id
โดยเอาค่า IDproductorder (ในข้อ1) ของสมาชิกคนนี้ และ พ่วงต่อมาด้วย
** ขั้นตอนการเอา IDproductorder Select จาก productorder โดย Where status=0 ไว้ด้วย กันกรณี 1 คนมีหลายรายการ

ตาราง order_id ควรมีฟิลหลักๆดังนี้
id / name / ID(Ref.productorder )
auto / xxxx / หมายเลขใบสั่ง Ref มาจากตารางก่อนหน้า

เมื่อเค้าทำการเพิ่มสินค้าเสร็จและ พอละ จะกดยืนยันรายการสั่งซื้อแล้วนะ . . . . .

3. เมื่อลูกค้ากดยืนยันการสั่งซื้อ สิ่งที่ต้องทำ อันดับแรกคือออกบิลเปล่าใหม่ให้เค้า . . . . เพราะเค้าหมดบิลแล้ว เอารายการมายืนยันส่งเราแล้วเลยบิลเปล่าหมด เหอๆๆๆ
โดย ไป Update status ของตาราง productorder ให้เป็น 1 [1:ยืนยันแล้ว] และออกบิลใหม่ให้เขาและStatus =0 พร้อมขายอีกครั้ง

3.1 สิ่งที่ต้องทำอันดับต่อมาเดิมที คุณจะย้ายข้อมูลในข้อ 1 2 เข้าตาราง detailorder แต่เราออกแบบฐานข้อมูลมาแบบนี้แล้ว แค่เปลี่ยน 0 เป็น 1 ในตาราง productorder เป็นอันเสร็จพิธีการแล้วครับ รับทราบแล้ว และถ้าอนาคต มีสถานะเกิดขึ้นใหม่ๆเราก็ปรับปรุงต่อยอดได้ง่ายมาก แค่ Update สถานะของตารางแม่ productorder
0 = ยังไม่ยืนยัน
1 = ยืนยัน
2 = แจ้งชำระเงินแล้ว
3 = ส่งแล้ว
4 = อะไรก็ว่ากันไปนิ

* สุดท้ายนี้ในหน้าของสมาชิกเอง โค้ดที่คิวรี่บิลของเค้า ต้องใส่ Where สถานะเท่ากับ 0 ไว้ด้วย เพื่อให้เวลาเค้าสั่งจะได้สั่งเข้าบิลเปล่าที่ยังไม่ยืนยัน

ปล. อาจจะเขียนยาวไปหน่อยขอโทษนะครับ เพราะยิ่งเขียนมันยิ่งมันส์มือยังไงก็ไม่รู้


ประวัติการแก้ไข
2013-09-13 21:09:08
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-09-13 21:05:02 By : meannerss
 


 

No. 9



โพสกระทู้ ( 31 )
บทความ ( 0 )



สถานะออฟไลน์


T^T ยังไม่ค่อยเข้าใจอยู่ดีครับ ว่าผมต้องแก้ไขโค้ด ข้างต้น ยังไง หรือต้องทำ ระบบใหม่ไปเลย เพราะเด่วผมจะต้องใช้ db กับเพื่อนที่ทำ เวป ส่วนของผม จะเป็น แอพพลิเคชั่น
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-09-13 21:35:42 By : littlemonkeyz
 


 

No. 10



โพสกระทู้ ( 1,666 )
บทความ ( 0 )



สถานะออฟไลน์


มีเวลาเยอะไหมหละครับ ถ้ามีก็รื้อเลย ป้องกันปัญหาระยะยาวได้ดีนะ. . . เพราะตามที่ DB ยังขาดในหลายๆจุดเรียกว่าไม่คล่องตัว
เดี๋ยวผมจะลองค้นงานเก่าๆลักษณะนี้ให้ดูนะครับ เผื่อได้เป็น Demo
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-09-13 21:43:19 By : meannerss
 


 

No. 11



โพสกระทู้ ( 31 )
บทความ ( 0 )



สถานะออฟไลน์


ขอบคุณมากครับ เรื่องเวลาคงมีไม่มาก เพราะใกล้ส่ง แล้วครับ ผมติดส่วนนี้ ส่วนเดียว การทำงานตามโค้ดข้างบน แก้ให้มันใช้งานไม่ได้เลยหรอครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-09-13 21:50:55 By : littlemonkeyz
 


 

No. 12



โพสกระทู้ ( 31 )
บทความ ( 0 )



สถานะออฟไลน์


ได้แล้วนะครับ ขอบคุณมากครับ ที่สละเวลาให้คำแนะนำ ถ้ามีเวลาหรือ พัฒนาต่อจะแก้ไข อัลกอรึทึ่ม ของระบบ ให้ดีกว่านี้ ตามที่คุณบอกนะครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-09-13 23:04:10 By : littlemonkeyz
 


 

No. 13



โพสกระทู้ ( 1,666 )
บทความ ( 0 )



สถานะออฟไลน์


ทดลองเขียนจับเวลา 2 ชั่วโมง บ๊ะความเร็วเราตกลงมาก สงสัยจะเราแก่
อันนี้เป็นตัว Demo นะครับ ตัดทุกอย่างที่ไม่จำเป็นออก เช่นพวก ที่อยู่ จำนวน เน้นหลักๆ
มีไฟล์ 4 + ดาต้าเบส1
1. index.php
2. phpconfig.php
3. phpfunctiondb.php
4. register.php


** phpconfig.php ปรับค่าเชื่อมต่อ DB นะครับ
**** พัฒนาบน AppServ2.5.10


1. index.php

Code (PHP)
<?
Session_Start();
if ($_GET['user']) {
$user=$_GET['user'];
$_SESSION['user']=$user;
}
include ("phpconfig.php");
include ("phpfunctiondb.php");
Conn2DB();
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
<style type="text/css">
<!--
.style1 {font-size: 12px}
-->
</style>
</head>

<body>
<form id="form1" name="form1" method="post" action="index.php">
<p>&nbsp;</p>
<table width="100%" border="1">
  <tr>
    <td colspan="3"><div align="center">สมมุติมันคือหน้าหลัก</div></td>
  </tr>
  <tr>
    <td colspan="3"> 
    <? if(!$_SESSION['user']){ ?>
    user 
      <input type="text" name="user" id="user" />
    pass
    <input type="text" name="pass" id="pass" />

    <input type="submit" name="button" id="button" value="ล้อคอิน" />
    <a href="register.php">สมัครสมาชิกกดที่นี่ </a>
    <?
    }else{ ?>
    สวัสดี <?=$_SESSION['user']?> <a href="?log_out=yes">Log out</a> <? } ?> </td>
  </tr>
  <tr>
    <td width="24%" valign="top">
      <table width="100%" border="1">
      <? if(!$_SESSION['user']){ ?>
        <tr>
          <td colspan="2">กรุณา็ล้อคอินก่อนทำการซื้อ</td>
        </tr>
       <? }else{
	   

	    $sqls="SELECT * FROM order_main WHERE user_name='$user' AND status=0";
 		$dbquerys= mysql_db_query($DataBaseName,$sqls);
	   	$results=mysql_fetch_array($dbquerys);
		$order_id=$results['order_id'];
	   ?>
       
        <tr>
          <td colspan="2">ใบสั่งซื้อเลขที่ <?=$order_id?></td>
        </tr>
        <?
        $sql="SELECT * FROM order_detail WHERE order_id='$order_id'";
 		$dbquery= mysql_db_query($DataBaseName,$sql);
		$num_rows= mysql_num_rows($dbquery);
		if ($num_rows<1){ echo "<tr><td colspan='2' align='center'>ว่าง</td></tr>";  }else{
		?>
        <tr>
          <td>รายการ</td>
          <td >ราคา</td>
        </tr>
        <?
		$i=0;
		while ($i<$num_rows) {
        $result=mysql_fetch_array($dbquery);
		$order_name=$result['order_name'];
		$order_price=$result['order_price'];
		
		?>
        <tr>
          <td><?=$order_name?></td>
          <td><?=$order_price?></td>
        </tr>
       <?
	   $net+=$order_price;
	   $i++;}
	   ?>
        <tr>
          <td><div align="right">รวม</div></td>
          <td><?=$net?></td>
        </tr>
        <tr>
          <td colspan="2"><div align="center"><strong><a href="?submit=<?=$order_id?>">ยืนยันการสั่งซื้อ</a></strong></div></td>
        </tr>
         <? } ?>
         
        <? } ?>
      </table></td>
    <td width="38%"><a href="?order=ข้าวมันไก่&amp;price=30&amp;order_id=<?=$order_id?>">ข้าวมันไก่ 30 บาท</a><br />
      <a href="?order=หมูย่าง&amp;price=20&amp;order_id=<?=$order_id?>">หมูย่าง 20 บาท</a><br />
      <a href="?order=ไก่ทอด&amp;price=30&amp;order_id=<?=$order_id?>">ไก่ทอด 30 บาท</a><br />
      <a href="?order=หมูปิ้ง&amp;price=5&amp;order_id=<?=$order_id?>">หมูปิ้ง 5 บาท</a><br />
      <span class="style1">*** สมมุติมันคิวรี่มาจาก DB นะ</span></td>
    
    <td width="38%" valign="top">
    
      <table width="100%" border="1">
        <tr>
          <td colspan="2">
        <? if($_SESSION['user']){ ?>
        <div align="center">ประวัติการสั่งซื้อของท่าน</div></td>
        </tr>
        <tr>
          <td>หมายเลขใบเสร็จ</td>
          <td>สถานะ</td>
        </tr>
        <?
        $sqls="SELECT * FROM order_main WHERE user_name='$user' AND status!=0";
 		$dbquerys= mysql_db_query($DataBaseName,$sqls);
		$num_rows= mysql_num_rows($dbquerys);
		if ($num_rows<1) { echo "<tr><td colspan='2'>ไม่มี</td></tr>"; } else {
		$i=0;
		while ($i<$num_rows) {
		$results=mysql_fetch_array($dbquerys);
		$order_id=$results['order_id'];
		$status=$results['status'];
		if ($status==1) { $show_status = "ยืนยันการสั่งซื้อแล้ว"; }
		
		?>
        
        <tr>
          <td ><?=$order_id?></td>
          <td><?=$show_status?></td>
        </tr>
        <? $i++;}}?>
        
      </table>  
      <? } ?>
      
      
    </td>
    
  </tr>
</table>
<p>&nbsp; </p>


<?
//ถ้ามีการล็อคอิน
if (($_POST['user'])&&($_POST['pass']))  
   {
   $user=$_POST['user'];
   $pass=$_POST['pass'];
   $sql="SELECT * FROM  member WHERE name='$user' AND pass='$pass'";
   $dbquery= mysql_db_query($DataBaseName,$sql);
   $num_rows= mysql_num_rows($dbquery);
   if ($num_rows>0){  // ถ้าล็อคอินผ่าน
   $result=mysql_fetch_array($dbquery);
   $user_show=$result['name'];
   
   }
   if ($user_show) { echo "<meta http-equiv='refresh' content='0;URL=index.php?user=$user_show'>";  }
   }
?>

<?
// มีการสั่งเข้ามา
if($_GET['order']){
$order=$_GET['order'];
$price=$_GET['price'];
$order_id=$_GET['order_id'];
INSERT_ORDER_DETAIL($order,$price,$order_id);
echo "<meta http-equiv='refresh' content='0;URL=index.php'>";
}
?>

<?
// log out
if($_GET['log_out']){
session_start();
unset ( $_SESSION['user'] );
session_destroy();
echo "<meta http-equiv='refresh' content='0;URL=index.php'>";
}
?>
<?
// ถ้ามีการยืนยันรายการ
if($_GET['submit']){
$order_id=$_GET['submit'];
UPDATE_ORDER_ID($order_id); //เปลี่ยนสถานะจาก 0 เป็น 1
INSERT_ORDER($user);//สร้างรายการใบเสร็จเปล่าๆใหม่
echo "<meta http-equiv='refresh' content='0;URL=index.php'>";
}
?>

</body>


</html>




ประวัติการแก้ไข
2013-09-14 00:19:53
2013-09-14 00:25:16
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-09-14 00:18:08 By : meannerss
 


 

No. 14



โพสกระทู้ ( 1,666 )
บทความ ( 0 )



สถานะออฟไลน์


2. register.php

Code (PHP)
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
</head>

<body>
<form id="form1" name="form1" method="post" action="register.php">
<table width="100%" border="0">
  <tr>
    <td><div align="center">User : 
        <input name="user" type="text" id="user" />
    </div></td>
  </tr>
  <tr>
    <td><div align="center">Pass: 
        <input name="pass" type="text" id="pass" />
    </div></td>
  </tr>
  <tr>
    <td><div align="center">
      <input type="submit" name="button" id="button" value="ตกลง" />
    </div></td>
  </tr>
</table>
<?
include ("phpconfig.php");
include ("phpfunctiondb.php");
Conn2DB();
if (($_POST["user"])&&($_POST["pass"]))  
   {
   $user=$_POST['user'];
   $pass=$_POST['pass'];
   INSERT_MEMBER($user,$pass); // เรียกฟังชั่น สมัครสมาชิก
   INSERT_ORDER($user); // เรียกฟังชั่น insert บิลเปล่า
   echo "ขอบคุณกรุณาไปล็อคอิน";
   }
?>
</body>
</html>




3.phpconfig.php
Code (PHP)
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<?php
$ServerName = "localhost";
$UserName = "root";
$UserPassword = "1234";
$DataBaseName = "test";
?>

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-09-14 00:21:43 By : meannerss
 


 

No. 15



โพสกระทู้ ( 1,666 )
บทความ ( 0 )



สถานะออฟไลน์


4. phpfunctiondb.php

Code (PHP)
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<?php
$conn;
function Conn2DB()
{
	global $conn;
	global $ServerName;
	global $UserName;
	global $UserPassword;
	global $DataBaseName;
	$conn = mysql_connect ($ServerName,$UserName,$UserPassword);
	mysql_query("SET NAMES UTF8");
	if (!$conn)
		die ("ไม่สามารถติดต่อกับฐานข้อมูลได้");
	mysql_select_db ($DataBaseName ,$conn)
		or die ("ไม่สามารถเลือกใช้งานฐานข้อมูล $DataBaseName ได้");
}

function INSERT_MEMBER($user,$pass)
{
	global $conn;
	$sql="INSERT INTO member (name,pass)";
	$sql.="VALUES ('$user','$pass')";
	mysql_query ($sql,$conn);
}
function INSERT_ORDER($user)
{
	global $conn;
	$sql="INSERT INTO order_main (user_name,status)";
	$sql.="VALUES ('$user','0')";
	mysql_query ($sql,$conn);
}

function INSERT_ORDER_DETAIL($order_name,$order_price,$order_id)
{
	global $conn;
	$sql="INSERT INTO  order_detail (order_name,order_price,order_id)";
	$sql.="VALUES ('$order_name','$order_price','$order_id')";
	mysql_query ($sql,$conn);
}

function UPDATE_ORDER_ID($order_id)
{
	global $conn;
	$sql = "UPDATE order_main SET status='1'";
	$sql.= "WHERE order_id='$order_id'";
	mysql_query ($sql,$conn);
}
?>




5. ดาต้าเบส EXPORT จาก PHP MYADMIN
Code
-- phpMyAdmin SQL Dump -- version 2.10.3 -- http://www.phpmyadmin.net -- -- โฮสต์: localhost -- เวลาในการสร้าง: 13 ก.ย. 2013 น. -- รุ่นของเซิร์ฟเวอร์: 5.0.51 -- รุ่นของ PHP: 5.2.6 SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO"; -- -- ฐานข้อมูล: `test` -- -- -------------------------------------------------------- -- -- โครงสร้างตาราง `member` -- CREATE TABLE `member` ( `id` int(11) NOT NULL auto_increment, `name` varchar(50) NOT NULL, `pass` varchar(50) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=18 ; -- -- dump ตาราง `member` -- INSERT INTO `member` VALUES (17, 'vv', 'vv'); INSERT INTO `member` VALUES (16, 'xc', 'xcz'); INSERT INTO `member` VALUES (15, 'a', 'a'); INSERT INTO `member` VALUES (14, 'we', 'we'); INSERT INTO `member` VALUES (13, 'dw', 'ww'); INSERT INTO `member` VALUES (12, 'd', 'd'); INSERT INTO `member` VALUES (11, 's', 's'); -- -------------------------------------------------------- -- -- โครงสร้างตาราง `order_detail` -- CREATE TABLE `order_detail` ( `order_detail_id` int(11) NOT NULL auto_increment, `order_name` varchar(50) NOT NULL, `order_price` int(11) NOT NULL, `order_id` int(11) NOT NULL, PRIMARY KEY (`order_detail_id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=10 ; -- -- dump ตาราง `order_detail` -- INSERT INTO `order_detail` VALUES (6, 'ไก่ทอด', 30, 4); INSERT INTO `order_detail` VALUES (2, 'หมูปิ้ง', 5, 2); INSERT INTO `order_detail` VALUES (3, 'ไก่ทอด', 30, 2); INSERT INTO `order_detail` VALUES (5, 'ไก่ทอด', 30, 2); INSERT INTO `order_detail` VALUES (7, 'ไก่ทอด', 30, 4); INSERT INTO `order_detail` VALUES (8, 'ข้าวมันไก่', 30, 5); INSERT INTO `order_detail` VALUES (9, 'หมูย่าง', 20, 8); -- -------------------------------------------------------- -- -- โครงสร้างตาราง `order_main` -- CREATE TABLE `order_main` ( `order_id` int(11) NOT NULL auto_increment, `user_name` varchar(50) NOT NULL, `status` int(1) NOT NULL, PRIMARY KEY (`order_id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=10 ; -- -- dump ตาราง `order_main` -- INSERT INTO `order_main` VALUES (1, 'we', 0); INSERT INTO `order_main` VALUES (2, 'a', 1); INSERT INTO `order_main` VALUES (3, 'xc', 0); INSERT INTO `order_main` VALUES (4, 'a', 1); INSERT INTO `order_main` VALUES (5, 'a', 1); INSERT INTO `order_main` VALUES (6, 'a', 0); INSERT INTO `order_main` VALUES (7, 'a', 0); INSERT INTO `order_main` VALUES (8, 'vv', 1); INSERT INTO `order_main` VALUES (9, 'vv', 0);

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-09-14 00:23:51 By : meannerss
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : PHP SQL ต้องการจะดึงค่าจาก 2 ตาราง มา insert อีกตารางหนึ่่ง
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ FTP| ใส่แถวของตาราง ใส่คอลัมน์ตาราง| ตัวยก ตัวห้อย ตัวพิมพ์ดีด| ใส่โค้ด ใส่การอ้างถึงคำพูด| ใส่ลีสต์
smiley for :lol: smiley for :ken: smiley for :D smiley for :) smiley for ;) smiley for :eek: smiley for :geek: smiley for :roll: smiley for :erm: smiley for :cool: smiley for :blank: smiley for :idea: smiley for :ehh: smiley for :aargh: smiley for :evil:
Insert PHP Code
Insert ASP Code
Insert VB.NET Code Insert C#.NET Code Insert JavaScript Code Insert C#.NET Code
Insert Java Code
Insert Android Code
Insert Objective-C Code
Insert XML Code
Insert SQL Code
Insert Code
เพื่อความเรียบร้อยของข้อความ ควรจัดรูปแบบให้พอดีกับขนาดของหน้าจอ เพื่อง่ายต่อการอ่านและสบายตา และตรวจสอบภาษาไทยให้ถูกต้อง

อัพโหลดแทรกรูปภาพ

Notice

เพื่อความปลอดภัยของเว็บบอร์ด ไม่อนุญาติให้แทรก แท็ก [img]....[/img] โดยการอัพโหลดไฟล์รูปจากที่อื่น เช่นเว็บไซต์ ฟรีอัพโหลดต่าง ๆ
อัพโหลดแทรกรูปภาพ ให้ใช้บริการอัพโหลดไฟล์ของไทยครีเอท และตัดรูปภาพให้พอดีกับสกรีน เพื่อความโหลดเร็วและไฟล์ไม่ถูกลบทิ้ง

   
  เพื่อความปลอดภัยและการตรวจสอบ กระทู้ที่แทรกไฟล์อัพโหลดไฟล์จากที่อื่น อาจจะถูกลบทิ้ง
 
โดย
อีเมล์
บวกค่าให้ถูก
<= ตัวเลขฮินดูอารบิก เช่น 123 (หรือล็อกอินเข้าระบบสมาชิกเพื่อไม่ต้องกรอก)







Exchange: นำเข้าสินค้าจากจีน, Taobao, เฟอร์นิเจอร์, ของพรีเมี่ยม, ร่ม, ปากกา, power bank, แฟลชไดร์ฟ, กระบอกน้ำ

Load balance : Server 00
ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2024 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่