|
|
|
การทำ List/Menu โดยดึงมาจากฐานข้อมูล การทำ List/Menu ด้วย phpโดยดึงข้อมูลจากฐานข้อมูลมาใช้ครับแนะนำหน่อยครับ |
|
|
|
|
|
|
|
Code (PHP)
<form name="form1" method="post" action="">
<?
$objConnect = mysql_connect("localhost","root","root") or die("Error Connect to Database");
$objDB = mysql_select_db("mydatabase");
$strSQL = "SELECT * FROM customer";
$objQuery = mysql_query($strSQL) or die ("Error Query [".$strSQL."]");
?>
<select name="select">
<?
while($objResult = mysql_fetch_array($objQuery))
{
?>
<option value="<?=$objResult["VALUE"];?>"><?=$objResult["ITEM"];?></option>
<?
}
?>
</select>
</form>
|
|
|
|
|
Date :
2010-03-06 22:11:29 |
By :
webmaster |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ครับผมต้องการเอาข้อมูลมาแสดงแล้วเลือกเมนูลิงไปอีกเพจ หนึ่งครับ
|
|
|
|
|
Date :
2010-03-06 22:19:10 |
By :
nongnew |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ต้องสร้างฐานข้อมูลก่อนป่าวครับ งง
|
|
|
|
|
Date :
2010-03-06 22:23:36 |
By :
nongnew |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
พี่ครับผมทำตามหนังสือแบบนี้มาครับ
<html >
<head><title>myweb</title>
<meta http-equiv="Content-Type" content="text/html; charset=tis-620" >
<script language="JavaScript" type="text/JavaScript" >
<!-
function MM_jumpMenu(targ,selObj,restore){//v3.0
eval(targ+".location=' "+selObj.options[selObj.selectedIndex].value+" ' ");
if (restore)selObj.selectedIndex=0;
}
function validate() {
if(document.from1.cat2.value=='')
{ alert ('Please select cat2 \nกรุณาเลือกหมวยย่อยด้วยจ้า.....พ่อคุณ');
document.form1.cat2.focus();
return false;
}else{
return true;
}
}
//->
</script></head>
<form name="form1"action="post.php" method="post" onSubmit='return validate();'>
<h3>จะบ้าตาย</h3>
<?php //v2 with drop down menu read from Mysql
error_reporting(E_ALL^ E_NOTICE);
$dbhost="localhost";
$dbname="sonic";
$dbuser="root";
$dbpass="1234";
$cat1=$_REQUEST['cat1']; //รับค่าเข้ามาว่าผู้ใช้เลือกหมวดอะไร
mysql_connect($dbserver,$dbuser,$dbpass) or die("เชื่อมต่อฐานข้อมูลไม่ได้.");
mysql_query("set NAMES tis620 "); //เลือภาษา
mysql_select_db($dbname) or die ("เลือกฐานข้อมูลไม่ได้"); //เลือกฐานข้อมูล
$sql = "SELECT * from cat1 Where cat1_val='$cat1' ";
$result = mysql_query($sql);
if(mysql_fetch_array($result)){
$current = mysql_result($result,0, 'cat1_label');
}else{
$current = "-กรุณาเลือก-";
} //เปิดฐานข้อมูล ตาราง cat1 เพื่อแสดงเมนูหลัก
$sql = "select * from cat1 Order by cat1_order";
$result = mysql_query($sql); ?>
หมวดหลัก <select Name= 'cat1' onChange="MM_jumpMenu('parent',this,0)">
<?
echo "<option value=$cat1>$current</option> \n"; //แสดงรายการเมนูลำดับแรก
echo "<option value=\"$PHP_SELF?cat1=$cat1\">-------</option>\n";
While($fetcharr = mysql_fetch_array($result) ){ // วนรอบแสดงรายการเมนู
$val = $fetcharr['cat1_val'];
$label = $fetcharr['cat1_label'];
echo "<option value=\"$PHP_SELF?cat1=$val\">$label</option>\n";
}// จบ while
echo "</Select>"; // สิ้นสุดเมนูหลัก
?>
หมวดย่อย <select name='cat2' size=1>
<?
$sql = "select * from cat2 where cat1_val='$cat1' ";
$result = mysql_query($sql);
if(mysql_num_rows($result)==0){
echo"<option>กรุณาเลือกรายการหลัก</option>\n";
}else{
echo "<option value=>-กรุณาเลือก-</option>\n";
}
while($fetcharr = mysql_fetch_array($result) ) { //วนรอบแสดงเมนูย่อย
$val = $fetcharr['cat2_val'];
$label = $fetcharr['cat2_label'];
echo "<option value=\"$val\">$label</option> \n";
}// จบ while
echo "</Select>";
?>
<br>Email <input type="text" name="email" ><br>
<input type="submit" value="ตกลง" >
</form>
|
|
|
|
|
Date :
2010-03-06 22:29:21 |
By :
nongnew |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
นี้ฐานข้อมูลครับ
-- phpMyAdmin SQL Dump
-- version 2.9.2
-- http://www.phpmyadmin.net
--
-- โฮสต์: localhost
-- เวลาในการสร้าง: 07 มี.ค. 2010 น.
-- รุ่นของเซิร์ฟเวอร์: 5.0.27
-- รุ่นของ PHP: 5.2.1
--
-- ฐานข้อมูล: `sonic`
--
-- --------------------------------------------------------
--
-- โครงสร้างตาราง `cat1`
--
CREATE TABLE `cat1` (
`id` int(5) NOT NULL auto_increment,
`cat1_order` int(2) NOT NULL,
`cat1_val` varchar(8) collate tis620_bin NOT NULL,
`cat1_label` varchar(50) collate tis620_bin NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=tis620 COLLATE=tis620_bin AUTO_INCREMENT=5 ;
--
-- dump ตาราง `cat1`
--
INSERT INTO `cat1` VALUES (1, 1, 0x31, 0xe0b8a3e0b896e0b8a2e0b899e0b895e0b98c20e0b8a2e0b8b2e0b899e0b8a2e0b899e0b895e0b98c);
INSERT INTO `cat1` VALUES (2, 3, 0x32, 0xe0b982e0b897e0b8a3e0b8a8e0b8b1e0b89ee0b897e0b98ce0b8a1e0b8b7e0b8ade0b896e0b8b7e0b8ad);
INSERT INTO `cat1` VALUES (3, 4, 0x33, 0xe0b982e0b897e0b8a3e0b897e0b8b1e0b8a8e0b899e0b98c);
INSERT INTO `cat1` VALUES (4, 2, 0x34, 0xe0b884e0b8ade0b8a1e0b89ee0b8b4e0b8a7e0b980e0b895e0b8ade0b8a3e0b98c);
-- --------------------------------------------------------
--
-- โครงสร้างตาราง `cat2`
--
CREATE TABLE `cat2` (
`id` int(5) NOT NULL auto_increment,
`cat1_val` varchar(8) collate tis620_bin NOT NULL,
`cat2_val` varchar(8) collate tis620_bin NOT NULL,
`cat2_label` varchar(50) collate tis620_bin NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=tis620 COLLATE=tis620_bin AUTO_INCREMENT=13 ;
--
-- dump ตาราง `cat2`
--
INSERT INTO `cat2` VALUES (1, 0x31, 0x746f796f, 0x746f796f7461);
INSERT INTO `cat2` VALUES (2, 0x31, 0x686f6e, 0x686f6e6461);
INSERT INTO `cat2` VALUES (3, 0x31, 0x666f7264, 0x466f7264);
INSERT INTO `cat2` VALUES (4, 0x31, 0x6d69747375, 0x6d697473756269736869);
INSERT INTO `cat2` VALUES (5, 0x32, 0x6e6f6b, 0xe0b982e0b899e0b980e0b881e0b8b5e0b8a2);
INSERT INTO `cat2` VALUES (6, 0x32, 0x70616e61, 0xe0b89ee0b8b2e0b899e0b8b2e0b982e0b88be0b899e0b8b4e0b881);
INSERT INTO `cat2` VALUES (7, 0x32, 0x73616d73756e67, 0x53616d73756e67);
INSERT INTO `cat2` VALUES (8, 0x33, 0x736f6e79, 0xe0b982e0b88be0b899e0b8b5e0b988);
INSERT INTO `cat2` VALUES (9, 0x33, 0x73616d73756e67, 0xe0b88be0b8b1e0b8a1e0b88be0b8b8e0b887);
INSERT INTO `cat2` VALUES (10, 0x34, 0x64656c6c, 0x44656c6c);
INSERT INTO `cat2` VALUES (11, 0x34, 0x69626d, 0x49424d);
INSERT INTO `cat2` VALUES (12, 0x34, 0x61636572, 0x41434552);
|
|
|
|
|
Date :
2010-03-06 22:32:24 |
By :
nongnew |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
คุณวินตอบเคลียร์ละนะผมว่า ก็ถ้าจะเอาตัวไหนมาแสดงก็ select มา คุณถามว่าจะต้องสร้างฐานข้อมูลไหม ถ้าไม่สร้างแล้วจะ select ยังไงละครับ
Code (PHP)
<?
$host = "ชื่อโฮส";
$user = "ชื่อผู้ใช้";
$pass = "รหัสผ่าน";
$dbname = "ชื่อฐานข้อมูล";
$connect = mysql_db_connect ("$host","$user","$pass");
mysql_select_db($dbname) ;
mysql_db_query($dbname,"SET NAMES tis620");
$sql="select * from ชื่อตารางที่จะเอามาแสดง";
$result=mysql_db_query($dbname,$sql);
while($rs=mysql_fetch_array($result)) {
$name=$rs[ชื่อฟิลด์];
echo "<OPTION >$name</OPTION>";
?>
|
|
|
|
|
Date :
2010-03-08 10:32:47 |
By :
Manussawin |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ขอบคุณครับ
|
|
|
|
|
Date :
2010-03-08 12:35:12 |
By :
nongnew |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ต้องการอยู่พอดี อิอิ ขอบคุณมากครับ
|
|
|
|
|
Date :
2010-06-06 15:43:07 |
By :
gavalga |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
อีกตัวอย่างครับแบบดิบ
<select name="id_type">
<option value="0">--เลือก--</option>
<?php include('../config/connect_db.php');
$SQL="SELECT *FROM typeprd_tb ORDER BY id_type";
$rs=$db->Execute($SQL)or die('ERROR1');
$num=$rs->NumRows();
while(!$rs->EOF){
$result=$rs->fields;
echo $id_type=$result['id_type'];
$name_type=$result['name_type'];
echo "<option value=$id_type>$name_type</option>";
$rs->MoveNext();
}
?></select>
ลองประยุกต์ดูครับผมความรู้น้อยนะครับ อิ อิ
|
|
|
|
|
Date :
2010-06-06 22:12:17 |
By :
sleepington |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 00
|