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 > นำค่าที่บันทึกลง DB อ่านออกมาใส่ array ไว้ แล้วใช้ in_array ตรวจสอบ ทำยังไงหรอคะ



 

นำค่าที่บันทึกลง DB อ่านออกมาใส่ array ไว้ แล้วใช้ in_array ตรวจสอบ ทำยังไงหรอคะ

 



Topic : 098353



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



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




จากกระทู้นี้ที่พี่ krungsri แนะนำมานะคะ https://www.thaicreate.com/php/forum/098177.html
นำค่าที่บันทึกลง DB อ่านออกมาใส่ array ไว้ แล้วใช้ in_array ตรวจสอบ มีวิธีการยังไงหรอคะ
คือเราลองทำแบบกำหนดเงื่อนไขธรรมดาแล้วมันไม่ได้อ่ะค่ะ แต่เราใช้วิธีทำแบบ array ไม่เป็นอ่ะค่ะ
คือโค้ดที่เราทำนะคะ ซึ่งส่วนใหญ่พี่ krungsri เขียนโค้ดมาให้ทั้งนั้นค่ะ

Code (PHP)
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>XXXXXXXXXXXX</title>
<script src="http://code.jquery.com/jquery-1.9.1.js"></script>
<script>
$(document).ready(function(e) {
	$('li').click(function(e) {
		var Current = $(this); //กำหนด Selector หลักเพื่อเรียนใช้งาน
		var ID = Current.attr('id'); // Id ของ li ที่คลิก
		var Text = Current.find('a').text(); //ให้หา tag <a></a> จาก Selector หลักแล้วเอา Text มา
		if(Text!=""){ //ตรวจสอบว่าได้ Text มาหรือไม่ กรณีที่ li เป็น class="selected" มันจะไม่ได้ Text
			$.ajax({ //เริ่มให้ ajax ทำงาน
				url:"insert.php", // URL ของไฟล์ที่จะส่งไปประมวลผล
				type:'POST', // ประเภทที่จะส่งไป GET หรือ POST
				data:{insert:ID}, // ตัวแปร หรือ พารามิเตอร์ที่จะส่งไป {ชื่อตัวแปร:ค่าที่ส่ง} ชื่อตัวแปรจะต้องตรงกันในไฟล์ที่รับค่า
				success: function(data){ // Call back เมื่อส่งค่าไปประมวลผลจะได้ค่าท่ส่งกลับมาอยู่ในตัวแปร data คือ 0 หรือ 1
					if(data==0){ // กรณีที่เป็น 0 คือ Insert ผ่าน
						Current.find('a').remove(); // ให้ลบ tag <a></a> ออกจาก Selector หลักที่ทำงานอยู่
						//ก่อนลบ <li id="chd_6"><a href="javascript:;" class="lgv">6</a></li>
						Current.addClass('selected').text(Text); // เพิ่ม class="selected" และกำหนด Text ใหม่
						// หลังลบและกำหนดใหหม่ <li id="chd_6" class="selected">6</li>
					}else{ // กรณีที่เป็น 1 คือ Insert ไม่ผ่าน
						alert("ไม่สามารถบันทึกได้!");	
					}
				}
			});
		}
    });
});
</script>
<style type="text/css">
.box-g-lucky {
	position: relative;
	width: 600px ;
	
    margin: 0 auto;	
    padding: 15px 13px 13px 15px;
}
.box-g-lucky ul {
	position: relative;
	z-index:
}
.box-g-lucky ul li, .h-status li span {
	display: block;
	float: left;
	margin: 0 2px 2px 0;
	width: 34px;
	height: 34px;
	text-align: center;
	cursor: pointer;
	background: #99cc66;
	color: #000;
	font: 700 15px/34px Arial;
	/*text-shadow: 1px 1px 0 rgba(255,255,255,0.9);*/
	border-radius: 2px;
	/*box-shadow: 0 -25px 20px -15px rgba(0, 0, 0, 0.25) inset, 0 2px 3px rgba(255, 255, 255, 0.75) inset, 1px 0 2px rgba(0,0,0,0.5)*/
}
.box-g-lucky ul li.active, 
.box-g-lucky ul li.selected, 
.box-g-lucky ul li.lucky, 
.box-g-lucky ul li:hover, 
.h-status li span.selected, 
.h-status li span.active, 
.h-status li span.lucky {
	/*box-shadow: 2px 2px 2px 0 rgba(0, 0, 0, 0.65) inset, -2px -2px 2px rgba(255, 255, 255, 0.95) inset, 1px 0 2px rgba(0,0,0,0.5)*/
}
.box-g-lucky ul li:hover {
	background: #ff3399
}
.box-g-lucky ul li.active, .h-status li span.active {
	background: #ffff99;
}
.box-g-lucky ul li.selected, .h-status li span.selected {
	background: #7a8e9c;
	cursor: not-allowed
}
.box-g-lucky ul li.lucky, .h-status li span.lucky {
	background: #ffa800;
	cursor: not-allowed
}
.box-g-lucky ul li a, .box-g-lucky ul li a:hover {
	color: #000;
	text-decoration: none
}
</style>
</head>
<body>
<div id="game-choice" class="box-g-lucky">
  <ul id="game-play">
    <?php
include "config.php";
$get_id = (isset($_GET['id'])) ? $_GET['id'] : '';
$string = "SELECT * FROM reward1 ORDER BY game_id DESC limit 1";
$query_string = mysql_query($string);
while($result = mysql_fetch_array($query_string))
{
for ($i=1; $i<=$result["number"]; $i++)
	{
echo '<li id='.$i.'><a href="javascript:;" class="">'.$i.'</a></li>'; //ตรงนี้คือเราให้ตารางเป็นสีที่ยังไม่มีใครเลือกก่อนนคะ
	 if($i==$result["r_number"]){ //ตรงนี้เรากำหนดเงื่อนไขคือ ถ้าเลขที่เลือกตรงกับเลขในฟิลด์ r_number คือเลขที่ได้รางวัล 
		'<li id='.$i.' class="lucky">'.$i.'</li>'; //เมื่อเลือกช่องตารางจะเป็นสีส้มตามคลาส lucky
	}else{
		'<li id='.$i.' class="selected">'.$i.'</li>'; ถ้าเลขไม่ถูกรางวัลจะเป็นสีฟ้า ตามคลาส selected
}
}
}
?>
</ul>



แต่พอทำออกมาแล้วกลับเป็นตามรูปอ่ะค่ะ พอเลือกแล้วกลับเป็นสีฟ้า ตามคลาส selected ทั้งหมด ซึ่งตัวเลขในดาต้าเบสที่เรากำหนดให้ได้รางวัลคือเลข 45 ซึ่งอยู่ในฟิลด์ r_number ค่ะ จะต้องเป็นสีส้มตามคลาส lucky
รูปภาพ


ส่วนอันนี้เป็นโค้ด ถ้าใส่ echo เข้าไปตรงให้แสดงตาราง
Code (PHP)
for ($i=1; $i<=$result["number"]; $i++)
	{
echo '<li id='.$i.'><a href="javascript:;" class="">'.$i.'</a></li>';
	 if($i==$result["r_number"]){
		echo '<li id='.$i.' class="lucky">'.$i.'</li>';
	}else{
		echo '<li id='.$i.' class="selected">'.$i.'</li>';
}


ผลออกมากลายเป็นเบิ้ลจำนวนช่องตารางเลยค่ะ อัพโหลดภาพไม่ขึ้นค่ะตรงนี้เลยไม่มีภาพมาด้วย


ส่วนอันนี้คือโค้ดเมื่อกดเลือกเลขแล้ว จะ insert เข้าไปเก็บในฟิลด์ของ select_number นะคะ
Code (PHP)
<?php
    include 'config.php';
	include 'functions.php';
	date_default_timezone_set('Asia/Bangkok');
    date("d:m:Y H:i:s");
	//FACEBOOK
try
{
//Connect Facebook
require_once 'facebook.php';
$facebook = new Facebook(array('appId' => 'XXXXXXXXXXXXXXXXXXXXXX',
											'secret' => 'XXXXXXXXXXXXXXXXXXXXXXXXXXX',
	                                        'cookie' => true,));
											


}
catch(Exception $e)
{
var_dump($e);
}

$user_id = $facebook->getUser();
$user_profile = null;
if ($user_id)
{
try
{
$user_profile = $facebook->api('/me');
}
catch (FacebookApiException $e)
{
error_log($e);
$user_id = null;
}
}

if(!$user_profile)
{
//echo $facebook->getLoginUrl();
header("Location: ".$facebook->getLoginUrl(array('scope'=>'email')));exit;
exit;
}
$users =$facebook->api('/me?fields=id,first_name,last_name,last_name,gender,email,picture.type(large),name');
$fb_uid =$users['id'];
//$gender =chkstr($users['gender']);
//$email =chkstr($users['email']);
//$user_picture =chkstr($users['picture']);
//$user_picture=chkstr($users['picture']['data']['url']);
//$name =chkstr($users['name']);

//END FACEBOOK ////
	$id = $_POST['insert'];
	$queryCheck = mysql_query("SELECT * FROM reward1");
	if(mysql_num_rows($queryCheck)>0)
{
	$arr = mysql_fetch_array($queryCheck);
	$sql = "INSERT INTO luckygames(select_number,play_time,fb_uid,game_id) VALUES ( '".$id."', '".date("Y-m-d H:i:s")."','".$fb_uid."','".$arr['game_id']."')";
}
	// '".date("Y-m-d H:i:s")."',
	//กรณีที่ Query ข้อมูลให้เปิดตัวนี้จะ Return แค่ 0 กับ 1 ไปให่ ajax
	if(mysql_query($sql)){ 
    echo '0';
	}else{
	echo '1';	
	} 
	
	//ทดลองว่า Insert ผ่านจะได้ 0 หากเปิดตัวบนให้ปิดตัวนี้
	//echo '0';
	
?>



ตามที่เราเข้าใจคือ ถ้านำค่าตัวเลขที่เก็บไว้ในฟิลด์ของ select_number มาเก็บใน array แล้วใช้ in_array ตรวจสอบ
ถ้าตรงกับเลขที่อยู่ในฟิลด์ r_number ก็จะเป็นสีส้มตามคลาส lucky แต่ถ้าไม่ตรงก็จะเป็นสีฟ้าตามคลาส selected
แต่เราไม่รู้วิธีการที่จะเขียนโค้ดลงไป ไม่รู้วิธีการของการใช้ array อ่ะค่ะ รบกวนพี่ๆช่วยแนะนำหรือยกตัวอย่างโค้ดด้วยนะคะ
ขอโทษที่รบกวนบ่อยแล้วก็เขียนอธิบายซะยืดยาว เราไม่รู้จะทำยังไงดีค่ะ เครียดมากๆ ยังติดอีกหลายอย่างเลย คงไม่ว่ากันนะคะ ขอบคุณมากๆเลยค่ะ



Tag : PHP, HTML/CSS, Ajax, jQuery







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2013-07-28 12:00:39 By : PRT View : 1083 Reply : 1
 

 

No. 1



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



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


ไม่มีใครมาตอบเลยหรอคะ T_T






แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-07-29 11:05:58 By : PRT
 

   

ค้นหาข้อมูล


   
 

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