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

HOME > PHP > PHP Forum > ดึงข้อมูลจาก Mysql มาใส่ใน Link List เขียนเป็น "ฟังก์ชัน" ยังไงหรอครับ??



 

ดึงข้อมูลจาก Mysql มาใส่ใน Link List เขียนเป็น "ฟังก์ชัน" ยังไงหรอครับ??

 



Topic : 064338



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



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



นี่คือโค้ดที่ผมเขียนโดยใช้ while loop ธรรมดา พอดีอยากลองเขียนเป็นฟังก์ชัน แต่ลองหลายครั้งแล้วไม่ได้ซักทีครับ
Code (PHP)
$objConnect = mysql_connect("localhost", "root", "1234") or die(Can't Connect Database Sever!");
mysql_query("SET NAMES utf8",$objConnect);
$objDB = mysql_select_db("tourthai") or die("Can't Connect Database!");
$strSQL = "SELECT category_article FROM category";
$objQuery = mysql_query($strSQL) or die(mysql_error());

หมวดหมู่ : 
<select style="width:100px;">
<?
	while($categoryResult = mysql_fetch_array($objQuery)){
	       echo "<option value=$categoryResult[category_article]>$categoryResult[category_article]</option>";
}?>
</select>

พอดียังไม่ค่อยเข้าใจการทำงานร่วมกันของ mysql_fetch_array กับ mysql_num_rows ดีพอนะครับ รบกวนพี่ๆ ช่วยแนะนำด้วยครับ
ขอบคุณมากครับ



Tag : PHP, MySQL







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2011-08-05 22:49:13 By : fogza View : 1683 Reply : 11
 

 

No. 1



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



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

ลองแบบนี้ดูครับ
Code (PHP)
<?php
$objConnect = mysql_connect("localhost", "root", "1234") or die(Can't Connect Database Sever!");
mysql_query("SET NAMES utf8",$objConnect);
$objDB = mysql_select_db("tourthai") or die("Can't Connect Database!");
$strSQL = "SELECT category_article FROM category";
$objQuery = mysql_query($strSQL) or die(mysql_error());
$categoryResult = mysql_fetch_array($objQuery);
?>
หมวดหมู่ :
<select style="width:100px;">
<?
	foreach($categoryResult  as $category){
	       echo '<option value="'.$category['category_article'].'">'.$category['category_article'].'</option>';
}

?>
</select>







แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-08-05 23:10:27 By : komson94
 


 

No. 2



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



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

ตอบความคิดเห็นที่ : 1 เขียนโดย : komson94 เมื่อวันที่ 2011-08-05 23:10:27
รายละเอียดของการตอบ ::
ลองแล้วมันไม่มีข้อมูลมาแสดงเลยครับ

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-08-05 23:18:41 By : fogza
 

 

No. 3



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



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

แก้ บรรทัด echo '<option value="'.$category['category_article'].'">'.$category['category_article'].'</option>';
เป็น echo '<option value="'.$category.'">'.$categor.'</option>';
เนื่องจากเลือกมาคอลัมเดียว
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-08-05 23:24:34 By : komson94
 


 

No. 4



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



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

ตอบความคิดเห็นที่ : 3 เขียนโดย : komson94 เมื่อวันที่ 2011-08-05 23:24:34
รายละเอียดของการตอบ ::
มันก็ยังไม่ขึ้นข้อมูลนะครับพี่

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-08-05 23:33:18 By : fogza
 


 

No. 5



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



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

อีกทีนึงครับผมสงสัยอาจะมีไรผิดพลาดที่ sql

Code (PHP)
<?php
$objConnect = mysql_connect("localhost", "root", "1234") or die(Can't Connect Database Sever!");
mysql_query("SET NAMES utf8",$objConnect);
$objDB = mysql_select_db("tourthai") or die("Can't Connect Database!");
$strSQL = "SELECT * FROM category";
$objQuery = mysql_query($strSQL) or die(mysql_error());
$categoryResult = mysql_fetch_array($objQuery);
//print_r($categoryResult); //หากมั่นใจว่า  sql ทำงานถูกต้องก็ให้เอาเครื่องหมาย //หน้า print_r($categoryResult); ออกเพื่่อดูข้อมูลที่ได้จากฐานข้อมูลครับ
?>
หมวดหมู่ :
<select style="width:100px;">
<?
	foreach($categoryResult  as $category){
	       echo '<option value="'.$category['category_article'].'">'.$category['category_article'].'</option>';
}

?>
</select>

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-08-05 23:43:40 By : komson94
 


 

No. 6



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



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

ตอบความคิดเห็นที่ : 5 เขียนโดย : komson94 เมื่อวันที่ 2011-08-05 23:43:40
รายละเอียดของการตอบ ::
นี่ครับผลลัพธ์ที่ได้
Array ( [0] => 00000000001 [category_id] => 00000000001 [1] => ทดสอบ [category_article] => ทดสอบ )

ส่วนใน linklist ก็ได้มา 4 อย่างตามด้านบน แต่เป็นเลข 0, 0, ?, ? ครับ



ประวัติการแก้ไข
2011-08-06 00:00:00
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-08-05 23:59:37 By : fogza
 


 

No. 7



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



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

นี่เป็นฟังก์ชันที่ผมใช้อยู่ประจำนะครับเขียนเอง รองรับภาษาไทยด้วยนะครับลองทดสอบดูครับ

Code (PHP)
<?php

$c 		= new itm();

class itm{
//information for using database
var $host 		= "localhost"; //host
var $user 		= "root";//username
var $pass 		= "1234";//pass
var $db 		= "tourthai";//database
var $nodata 	= "DATA WAS NOT FOUND";


function replace($str){
$citem = file("uci.txt");
for($i=0;$i<count($citem);$i++){
$str = str_replace(trim($citem[$i]),'  ',$str);
}
return $str;
}

function sms($sms){//show shot message from system
echo "<br>".$sms."<br>";
}

function connect($sql){
$connect = mysql_connect($this->host,$this->user,$this->pass) or die ("NOT Conncect");
$connect = mysql_select_db($this->db) or die ("NOT SELECT DB");
$connect = mysql_query("set NAMES tis620");
$connect = mysql_query($sql);
return $connect ;
}

function Qarray($sql){
$connect = mysql_connect($this->host,$this->user,$this->pass) or die ("NOT Conncect");
$connect = mysql_select_db($this->db) or die ("NOT SELECT DB");
$connect = mysql_query("set NAMES tis620");
$connect2= mysql_query($sql);
$numrow  = @mysql_num_rows($connect2);
if($numrow<1){
return $this->nodata;
}else{
$i = 0;
$name = $this->getfield($sql);
$t = 0; 
while($data = mysql_fetch_array($connect2)){
 while($t<count($name)){
 
 $return[$i][$name[$t]] = $data[$name[$t]];
 ++$t;
 }

$t=0;
++$i;
}
return $return;
}
}

function getfield($sql){
$connect 	= mysql_connect($this->host,$this->user,$this->pass) or die ("NOT Conncect");
$connect 	= mysql_select_db($this->db) or die ("NOT SELECT DB");
$connect 	= mysql_query("set NAMES tis620");
$connect2	= mysql_query($sql);
$numfield 	= mysql_num_fields($connect2);

for($i=0;$i<$numfield;$i++){
$name[$i] = mysql_field_name($connect2,$i);
}
$G	= $i;
return $name;
}



function Q($sql){
$connect 		= mysql_connect($this->host,$this->user,$this->pass) or die ("NOT Conncect");
$connect 		= mysql_select_db($this->db) or die ("NOT SELECT DB");
$connect 		= mysql_query("set NAMES tis620");
$connect2		= mysql_query($sql);
unset($_POST);
}


}
?>


<?php


$sql ="SELECT * FROM  `category` ";
$data =$c->Qarray($sql);
if(gettype($data)==='array'){

?>
หมวดหมู่ :
<select style="width:100px;">
<?
	foreach($data  as $d){
	       echo '<option value="'.$d['category_article'].'">'.$d['category_article'].'</option>';
}

?>
</select>
<?php
}

?>

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-08-06 00:08:47 By : komson94
 


 

No. 8



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



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

ตอบความคิดเห็นที่ : 7 เขียนโดย : komson94 เมื่อวันที่ 2011-08-06 00:08:47
รายละเอียดของการตอบ ::
ขอบคุณครับ เดี๋ยวผมจะลองศึกษาดูครับ
อ่านแล้วก็งงๆ กับเครื่องหมาย ->, === ครับ

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-08-06 00:11:29 By : fogza
 


 

No. 9



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



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

มันเป็นการเขียนแบบ oop นะครับ ใช้ง่ายดีผมใช้ประจำครับเพราะไม่ต้องไปวุ่นวายกับการเชื่อมฐานข้อมูล
จะมีสว่นประกอบที่ใช้ประจำก็คือ
โดยกำหนด
$c = new itm(); กำหนดคลาสใหม่
$c->Qarray($sql) คือการดึงข้อมูลจากฐานข้อมูลพร้อมทั้งจัดลง array ให้เรียบร้อย
$c->Q($sql) คือ การสั่งใช้คำค้น sql ครับ


if(gettype($data)==='array' ){ คือการตรวจดูว่า $data เป็นตัวแปร โดยใช้ gettype(); หากคืนค่ากลับมาเป็น array ให้ทำงานต่อไปครับ



ปล.สงสัยยังไงโพสถามได้ที่เฟสบุค http://www.facebook.com/rkppk
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-08-06 00:20:42 By : komson94
 


 

No. 10



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



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

ตอบความคิดเห็นที่ : 9 เขียนโดย : komson94 เมื่อวันที่ 2011-08-06 00:20:42
รายละเอียดของการตอบ ::
ขอบคุณครับ เดี๋ยวคงได้ถามอีกเยอะเลย รบกวนด้วยนะครับ
on facebook ด้วยครับ ว่าจะถามเรื่อง
Qarray, Q ตามที่พี่อธิบายมาหน่อยนะครับ พอดีงงๆ



ประวัติการแก้ไข
2011-08-06 00:39:13
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-08-06 00:37:34 By : fogza
 


 

No. 11



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



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

ยินดีครับถ้าออนก็ถามได้เลยนะครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-08-07 19:01:02 By : komson94
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : ดึงข้อมูลจาก Mysql มาใส่ใน Link List เขียนเป็น "ฟังก์ชัน" ยังไงหรอครับ??
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ 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-2025 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่