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 > session เปลี่ยนค่าเองครับ ขอรบกวนช่วยดูให้ด้วยครับ



 

session เปลี่ยนค่าเองครับ ขอรบกวนช่วยดูให้ด้วยครับ

 



Topic : 110714



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



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




สวัสดีครับ วันนี้ผมงานเข้าอีกแล้ว = =''

คือผมตั้ง session ไว้สำหรับดึงข้อมูลของแต่ละ user มาโชว์ครับ เขียวโค้ดตามนี้

Code (ASP)
<?
$uid = $_SESSION["id"];
echo $id;
$current_page = 1;
if(isset($_GET['page'])){
	$current_page = $_GET['page'];
}
$row_per_page = 15;
$start_row = ($current_page - 1) * $row_per_page;

$sql = "select SQL_CALC_FOUND_ROWS * FROM daily WHERE user_id = '$uid' ORDER BY daily_id  DESC LIMIT $start_row, $row_per_page";
$result = mysql_query($sql);
?>


error pic

ตรง echo $id;ผมใช้เช็คค่า $id ที่ดึงมาครับ ทีนี้พอผมกดลิ้งแก้ไขข้อมูลในตารางที่โชว์ แล้วกดย้อนกลับมาดูมันเป็นแบบนี้ครับ

error pic 2

จะเห็นว่าตรง echo ค่ามันเปลี่ยนไปจาก 1 กลายเป็น 34 ซึ่งถ้าเทียบกับรูปแรก 34 เป็นเลขจากค่า id ในตารางที่ดึงมาครับ

พอจะมีวิธีทำให้เลขมันไม่เปลี่ยนไปมั้ยครับ? เพราะ $_SESSION["id"]; นี่ดึงค่าจากหน้า login แท้ๆ ไหงมาเพียนกับหน้าแก้ไขได้



ลืมไป อันนี้โค้ดหน้าลิ้งแก้ไขครับ

Code (ASP)
<?
session_start();
require_once("config.inc");
/*$host="localhost";
$user="data_db"; 
$pwd="3214"; 
$dbname="data_db";*/
mysql_connect($host,$user,$pwd) or die ("ติดต่อ Host ไม่ได้");
mysql_select_db($dbname) or die ("ติดต่อฐานข้อมูลไม่ได้");
mysql_query("SET NAMES utf8");

$id = $_GET['id'];
$table = $_GET['type'];

$query = mysql_query("select * from daily  where daily_id = '$id' ");
$result = mysql_fetch_assoc($query);

$query2 = mysql_query("select * from event inner join event_list on event.event_type = event_list.list_id inner join event_detail on event.event_list = event_detail.detail_id where daily_id = '$id' ");

if(mysql_num_rows($query2)>0){
	 $list_id = array();
	 $list_type = array();
	 $detail_id = array(); 
	 $detail_name = array();
	 $event_detail = array();
	 $event_id = array();
	while  ( $sql = mysql_fetch_assoc($query2)){ 
		array_push($list_id, $sql['list_id']);
		array_push($list_type, $sql['list_type']);
		array_push($detail_id, $sql['detail_id']);
		array_push($detail_name, $sql['detail_name']);
		array_push($event_detail, $sql['event_detail']);
		array_push($event_id, $sql['event_id']);
		}
		$_SESSION['eid'] = $event_id;
		
$mydate=getdate(date("U"));
$myday = $mydate[mday]-1;

$d=strtotime($result['date']);

}

?>




Tag : PHP, MySQL, Web (ASP.NET), Windows









ประวัติการแก้ไข
2014-08-19 13:59:52
Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2014-08-19 13:50:09 By : nimirue View : 1971 Reply : 9
 

 

No. 1



โพสกระทู้ ( 9,556 )
บทความ ( 2 )



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


$uid = $_SESSION["id"];
03.echo $id;

ตัวแปรคนละตัวหรือ พิมพ์ตกครับ






แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-08-19 14:02:36 By : Chaidhanan
 


 

No. 2



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



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


ตอบความคิดเห็นที่ : 1 เขียนโดย : Chaidhanan เมื่อวันที่ 2014-08-19 14:02:36
รายละเอียดของการตอบ ::
พิมพ์ตกครับ ผมลองแก้ให้เหมือนกันแล้ว ค่ายังเปลี่ยนเองอยู่ครับ


session ของ user ทั้งหมดมาจากตรงนี้ครับ

Code (ASP)
$username = $_POST['user'];
$password = $_POST['pass'];

if(!$username || !$password){
	echo '<h3>Please text your username and password completely.</h3><br /> 
 <a href="Javascript:window.history.back();">Back to main page.</a>';
 } 
else{ 
 $query = mysql_query("SELECT * FROM linework inner join user on user.user_id = linework.user_id inner join job_type on job_type.job_id = linework.job_id inner join seven_shop on seven_shop.id = linework.store_id where user.username = '$username' and user.password = '$password'");
 mysql_close();

 if(mysql_num_rows($query)>0){
	 $storecode = array(); 
	while  ( $result = mysql_fetch_assoc($query)){ 
		array_push($storecode, $result['seven_code']);
		$fname = $result["fname"];
		$id_type = $result["id_type"];
		$user_id = $result["user_id"];
		$lname = $result['lname'];
	}
$_SESSION["login"] = $fname;
$_SESSION["class"] = $id_type;
$_SESSION["id"] = $user_id;
$_SESSION['lname'] = $lname;
$_SESSION['storecode'] = $storecode;

session_write_close();
echo '<script type="text/javascript">  
 window.history.back(); 
 </script>'; 
 }
 else{ 
 echo '<h3>Username or Password not correct.</h3><br /> 
 <a href="Javascript:window.history.back();">Back to main page.</a>'; 
 } 
} 


แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-08-19 14:11:03 By : nimirue
 

 

No. 3



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



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


$uid = $_SESSION["id"]; ควรเป็น $uid = $_SESSION["uid"];
จะได้ไม่สับสนกับ บรรทัดที่ 12 $id = $_GET['id'];
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-08-19 14:17:09 By : chai19
 


 

No. 4



โพสกระทู้ ( 9,556 )
บทความ ( 2 )



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


เนื่องจากเอาโค๊ดมาแค่บางส่วน เลยต้องถามให้แน่ใจก่อนว่า session_start() มีอยู่ก่อนการเรียกใช้ $_SESSION ทุกไฟล์นะครับ

ใส่ข้างล่างนี้ ที่บันทัดแรกของ ไฟล์ที่มีปัญหา
Code (PHP)
<?php
session_start();
print_r($_SESSION); exit; // ทดสอบค่า ก่อนทำงานขั้นต่อไป

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-08-19 14:21:55 By : Chaidhanan
 


 

No. 5



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



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


เปลียนบรรทัดที่ 23 เป็น $_SESSION["uid"] = $user_id;
และเปลี่ยนเป็น $uid = $_SESSION["uid"];
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-08-19 14:22:18 By : chai19
 


 

No. 6



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



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


ตอบความคิดเห็นที่ : 4 เขียนโดย : Chaidhanan เมื่อวันที่ 2014-08-19 14:21:55
รายละเอียดของการตอบ ::
session ผมใส่ให้ทุกหน้าเลยครับ เพราะต้องใช้ session จากการ login เกือบหมดเลย


ตอบความคิดเห็นที่ : 5 เขียนโดย : chai19 เมื่อวันที่ 2014-08-19 14:22:18
รายละเอียดของการตอบ ::
ได้ผลครับ ค่าไม่เปลี่ยนเองแล้ว ขอบคุณมากครับ


ขอถามเพิ่มเป็นความรู้ครับ

ทำไมค่ามันถึงตีกันได้ล่ะครับ คือ $uid = $_SESSION["id"]; กับ $id = $_GET['id']; มันดึงค่ามาจากคนละที่แท้ๆ เป็นเพราะชื่อแค่เหมือนกันเหรอครับ?
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-08-19 14:29:32 By : nimirue
 


 

No. 7



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



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


ถูกต้อง
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-08-19 14:35:00 By : chai19
 


 

No. 8



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



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


ตอบความคิดเห็นที่ : 7 เขียนโดย : chai19 เมื่อวันที่ 2014-08-19 14:35:00
รายละเอียดของการตอบ ::
เคครับ คราวหลังจะได้ระวังเชื่องชื่อตัวแปร


ขอบคุณทุกคนอีกครั้งที่ช่วยมาตอบนะครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-08-19 14:37:36 By : nimirue
 


 

No. 9



โพสกระทู้ ( 9,556 )
บทความ ( 2 )



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


ตอบความคิดเห็นที่ : 6 เขียนโดย : nimirue เมื่อวันที่ 2014-08-19 14:29:32
รายละเอียดของการตอบ ::
ประเด็นคือ ตัวแปร $_SESSION['id'] ถูกใช้ไปก่อนแล้ว สำหรับ user Login

แต่มาถูกเขียนทับด้วย SellerID จากการคิวรี่ รายการขายของพนักงานขาย

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-08-19 15:55:38 By : Chaidhanan
 

   

ค้นหาข้อมูล


   
 

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