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,037

HOME > PHP > PHP Forum > พอดีต้องการดึงข้อมูล 2 ตารางมาแสดงหน้าเว็บแต่ติดปัญหาไม่รู้จะเขียนยังไงดีครับ



 

พอดีต้องการดึงข้อมูล 2 ตารางมาแสดงหน้าเว็บแต่ติดปัญหาไม่รู้จะเขียนยังไงดีครับ

 



Topic : 089431



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



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




พอดีต้องการดึงข้อมูลจากตาราง 2 ตารางมาแสดงหน้าเว็บแต่ติดปัญหาไม่รู้จะเขียนยังไงดีครับตัวเดิมไม่มีปัยหาแต่พอดีโดนให้เขียนแบบอาเรย์เลยไม่รู้เขียนไงดีทามมาก้อรันออกครับเลยให้เพื่อนๆหรือท่านที่พอรู้ช่วยแก้ให้หน่อยครับปัยหาคือตัวแปร $j ซึ่งในโค๊ดเดิมรันไม่มีปัญหาครับแต่อาจารย์สั่งให้เขียนเป็นอาร์เรย์แทนรันออกครับแต่ผลมันออกมาแปลกๆวึ่งตัวเดิมทำงานได้ครับเลยคิดว่าน่าจะผิดที่ตัวแปร $j หรือการวางเงื่อนไขกันแน่


ฐานข้อมูล

-- 
-- ฐานข้อมูล: `test`
-- 

-- --------------------------------------------------------

-- 
-- โครงสร้างตาราง `choice`
-- 

CREATE TABLE `choice` (
  `Choice_Id` int(3) NOT NULL auto_increment,
  `Choice` varchar(255) NOT NULL,
  `Point` float NOT NULL default '0',
  `Question_Id` varchar(3) NOT NULL,
  PRIMARY KEY  (`Choice_Id`)
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=9 ;

-- 
-- dump ตาราง `choice`
-- 

INSERT INTO `choice` VALUES (1, '1', 1, '4');
INSERT INTO `choice` VALUES (2, '2', 0, '3');
INSERT INTO `choice` VALUES (3, '3', 0, '3');
INSERT INTO `choice` VALUES (4, '4', 0, '3');
INSERT INTO `choice` VALUES (5, '7', 0.5, '4');
INSERT INTO `choice` VALUES (6, '8', 0, '4');
INSERT INTO `choice` VALUES (7, '11', 0.5, '4');

-- --------------------------------------------------------

-- 
-- โครงสร้างตาราง `question`
-- 

CREATE TABLE `question` (
  `Question_Id` int(3) NOT NULL auto_increment,
  `Question_Detail` text NOT NULL,
  `Question_Type` enum('S','M') NOT NULL default 'S',
  `Picture` varchar(255) NOT NULL,
  PRIMARY KEY  (`Question_Id`)
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=7 ;

-- 
-- dump ตาราง `question`
-- 

INSERT INTO `question` VALUES (3, '1+1', 'M', 'pic1');
INSERT INTO `question` VALUES (4, '2+2', 'M', 'pic2');


โค๊ดตัวเดิมครับ

Code (PHP)
<?php
$host="localhost";
$username="root";
$password="1234";
$db="test";

mysql_connect( $host,$username,$password) or die ("ติดต่อกับฐานข้อมูล Mysql ไม่ได้ ");
mysql_select_db($db) or die("เลือกฐานข้อมูลไม่ได้");

$sql = "select * from question q, choice c where q.Question_Id = c.Question_Id order by c.Question_Id order by rand()";
$query = mysql_query($sql);
$i = 0;
while($row = mysql_fetch_array($query))
	{
	$tye = $row["Question_Type"];
		/// m = mutiple choice /// s = single choice
		if($tye=='S'){
			if($i == 0){
					$value = $row['Question_Id'];
					$tye = $row["Question_Type"];
					$pic = $row["Picture"];
					echo  $pic. "<br>";
					echo  $row['Question_Detail']. "<br>";
					echo  $tye. "<br>";
						}
			if($row['Question_Id'] == $value)
				{
				
				
				echo '<input type="radio" name= "'.rdo.$value .'" value = "' . $row['Choice_Id'] . '">'." " . $row['Choice']." point : ".$row['Point']."<br>";
			
			$i++;
				}
				else if($row['Question_Id'] != $value)
				{
						$value = $row['Question_Id'];
						$tye = $row["Question_Type"];
						$pic = $row["Picture"];
				
				echo  $pic. "<br>";
				echo  $row['Question_Detail']. "<br>";
				echo  $tye. "<br>";
				echo '<input type="radio" name= "'.rdo.$value .'" value = "' . $row['Choice_Id'] . '">'." " . $row['Choice']." point : ".$row['Point']."<br>";
					/*<input name="answer[<?=$i;?>]" type="hidden" value="<?=$result["answer"];?>">*/
						$i = 1;
						}
				}
	
		else{
		
	
			if($i == 0){
					$value = $row['Question_Id'];
					$tye = $row["Question_Type"];
					$pic = $row["Picture"];
			
					echo  $pic. "<br>";
					echo  $row['Question_Detail']. "<br>";
					echo  $tye. "<br>";
						}
			if($row['Question_Id'] == $value)
				{
				echo '<input type= "checkbox" name= "checkbox[]" value = "' . $row['Choice_Id'] . '">'." " . $row['Choice']." point : ".$row['Point']."<br>";
				
			
					$i++;
			}
			else if($row['Question_Id'] != $value)
			{
				$value = $row['Question_Id'];
				$tye = $row["Question_Type"];
				$pic = $row["Picture"];
				echo  $pic. "<br>";
				
				echo  $row['Question_Detail']. "<br>";
				echo  $tye. "<br>";
				
					echo '<input type= "checkbox" name= "checkbox[]" value = "' . $row['Choice_Id'] . '">'." " . $row['Choice']." point : ".$row['Point']."<br>";
						$i = 1;
			}
}}
?>


ตัวที่สั่งให้เขียนใหม่แต่ทำงานผิดผลาดครับ

Code (PHP)
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<?php
$host="localhost";
$username="root";
$password="1234";
$db="test";

mysql_connect( $host,$username,$password) or die ("µÔ´µè͡Ѻ°Ò¹¢éÍÁÙÅ Mysql äÁèä´é ");
mysql_select_db($db) or die("àÅ×Í¡°Ò¹¢éÍÁÙÅäÁèä´é");





$sql = "select * from question q, choice c where q.Question_Id = c.Question_Id ";


$dbqurey = mysql_query($sql);

$array_question_db = array();
$j =0;

while ($result = mysql_fetch_array($dbqurey)) 
{ 
	
	$array_question_db['qid'][$j] = $result['Question_Id'];
	$array_question_db['detail'][$j]= $result['Question_Detail'];
	$array_question_db['picture'][$j] = $result['Picture'];
	$array_question_db['choice_id'][$j] = $result['Choice_Id'];
	$array_question_db['choice'][$j] = $result['Choice'];
	$array_question_db['point'][$j] = $result['Point'];
	$j= $j+1;
}
//echo print_r($array_question_db,true)."<br>";
echo print_r($array_question_db['qid'],true)."<br>";
echo print_r($array_question_db['choice_id'],true)."<br>";
echo print_r($array_question_db['choice'],true)."<br>";
for($j=0;$j<sizeof($array_question_db['qid']);$j++){
		
	if($j==0 )
		{	
		$value = $array_question_db['qid'][$j];
		echo $array_question_db['qid'][$j]." -- " . $array_question_db['detail'][$j]. "<br>";
		
		}
		
	if($value == $array_question_db['qid'][$j] )
		{
		
		echo $array_question_db['choice_id'][$j]."".$array_question_db['choice'][$j]."</br>" ;
		$j++;
		
			
			
		}
	else if($value != $array_question_db['qid'][$j] )
		{
			$value = $array_question_db['qid'][$j];
			echo $array_question_db['qid'][$j]." -- " . $array_question_db['detail'][$j]. "<br>";
			echo $array_question_db['choice_id'][$j]."".$array_question_db['choice'][$j]."</br>" ;

		$j=1;	
		}
	
		
}

?>



อยากให้แสดงอย่างนี้ครับ
ข้อ 1.

ไอดีคำถามและ คำถาม
ตัวเลือกที่ 1
ตัวเลือกที่ 2

ข้อ 2.

ไอดีคำถามและ คำถาม
ตัวเลือกที่ 1
ตัวเลือกที่ 2
แต่พอเปลี่ยนมาเป็น array รันไม่ได้เลย




Tag : PHP







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2013-01-18 22:32:40 By : dannan882 View : 838 Reply : 1
 

 

No. 1



โพสกระทู้ ( 74,058 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

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

ใช้ Loop ซ้อน Loop ก็ไม่น่าจะมีปัญหาอะไรน่ะครับ

Code (PHP)
<?
$objConnect = mysql_connect("localhost","root","root") or die("Error Connect to Database");
$objDB = mysql_select_db("mydatabase");
$strSQL = "SELECT * FROM tb_question";
$objQuery = mysql_query($strSQL) or die ("Error Query [".$strSQL."]");
while($objResult = mysql_fetch_array($objQuery))
{
	echo $objResult["QuestionName"];

		$strSQL2 = "SELECT * FROM tb_question WHERE QuestionID = '"$objResult["QuestionID"].."' ";
		$objQuery2 = mysql_query($strSQL) or die ("Error Query [".$strSQL2."]");
		while($objResult2 = mysql_fetch_array($objQuery2))
		{
			echo $objResult2["OptionName"];
		}

}
mysql_close($objConnect);
?>







แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-01-19 08:27:27 By : mr.win
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : พอดีต้องการดึงข้อมูล 2 ตารางมาแสดงหน้าเว็บแต่ติดปัญหาไม่รู้จะเขียนยังไงดีครับ
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ 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 05
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 อัตราราคา คลิกที่นี่