ยินดีต้อนรับคุณ, บุคคลทั่วไป กรุณา เข้าสู่ระบบ หรือ ลงทะเบียน

เข้าสู่ระบบด้วยชื่อผู้ใช้ รหัสผ่าน และระยะเวลาในเซสชั่น

หน้า: [1]   ลงล่าง
พิมพ์
ผู้เขียน หัวข้อ: How to turn register_globals on  (อ่าน 5412 ครั้ง)
0 สมาชิก และ 1 บุคคลทั่วไป กำลังดูหัวข้อนี้
Newbies
สมุนแก๊งเสียว
*

พลังน้ำใจ: 42
ออฟไลน์ ออฟไลน์

กระทู้: 554



ดูรายละเอียด
« เมื่อ: 02 เมษายน 2007, 15:23:56 »

แบบว่าสคริบมันต้องใช้ครับ แต่โฮสต์มันตั้ง off ไว้
ลอง step ตามนี้

ลองคำสั่งใน .htaccess
php_flag register_globals on >> Internal Server Error (500)
php_value register_globals 1 >> Internal Server Error (500)

ก่อนหน้านี้ โฮสต์มันให้ใส่ php.ini ใน root directory เพื่อสั่ง on
ก็ใช้ได้อยู่พักนึง แต่ตอนนี้ใช้ไม่ได้แล้ว

มีวิธีไหนอีกครับ เพื่อสั่ง on เจ้าตัวนี้


โทษทีครับ ตะกี้โพสต์ผิดกระทู้
บันทึกการเข้า



ColdMoney
เจ้าพ่อบอร์ดเสียว
*

พลังน้ำใจ: 200
ออฟไลน์ ออฟไลน์

กระทู้: 12,622



ดูรายละเอียด เว็บไซต์
« ตอบ #1 เมื่อ: 02 เมษายน 2007, 17:24:46 »

ปรกติก็แก้ที่ php.ini ที่เดียวนะครับ ไม่เคยเจอว่า ต้องแก้หลายที่อ่ะครับ  :?
บันทึกการเข้า

smartclick
คนรักเสียว
*

พลังน้ำใจ: 1
ออฟไลน์ ออฟไลน์

กระทู้: 127



ดูรายละเอียด
« ตอบ #2 เมื่อ: 07 เมษายน 2007, 10:41:37 »

โดยทั่วไป ถ้าเป็นโฮสที่เป็น cpanel  .. เจ้าของโฮส เค้าจะ set config ไว้ ให้ทาง user upload ไฟล์ php.ini โดยมีเนื้อความแค่ register_globals=On  แค่นั้น ขึ้นไปใน directory ที่คุณเขียน php ไว้น่ะครับ ... ลองดูครับ
บันทึกการเข้า
barbies55
Verified Seller
เจ้าพ่อบอร์ดเสียว
*

พลังน้ำใจ: 417
ออฟไลน์ ออฟไลน์

กระทู้: 11,533



ดูรายละเอียด เว็บไซต์
« ตอบ #3 เมื่อ: 07 เมษายน 2007, 11:05:57 »

ลองดูจากเวบนี้นะคะ

http://www.itc.virginia.edu/de...op/web/php4registerglobal.html
บันทึกการเข้า

รับทำเทมเพลท รับโมเทมเพลทให้เข้ากับสคริปต์ต่างๆ


On the Internet, Never One Know You are a Dog.
ผ้าขี้ริ้วห่อทองย่อมเป็นทองฉันใด เอาทองเปลวมาห่อขี้ก็ยังเป็นขี้ฉันนั้น
Newbies
สมุนแก๊งเสียว
*

พลังน้ำใจ: 42
ออฟไลน์ ออฟไลน์

กระทู้: 554



ดูรายละเอียด
« ตอบ #4 เมื่อ: 07 เมษายน 2007, 11:40:36 »

เนื่องจากไม่สามารถทำให้สคริบมันทำงานสมบูรณ์ได้

จึงขอถามเพิ่มอีกว่า

จะเขียนโปรแกรมอย่างไร ให้ session มันเก็บค่าตัวแปร และส่งผ่านไปทุกๆหน้า โดยไม่ชึ้นกับค่า Register_Globals นี้เลย

ตัวอย่างครับ


โค๊ด:
<?
session_start();

if(!isset($secret_number)) { $secret_number = rand(1,10); $count=0; }
session_register("secret_number");
session_register("count");

if($_POST["num"]) {
if($_POST["num"]==$secret_number) {
$count++;
echo "<h1>Yo ! Correct ($count)</h1>";
session_destroy();
$count=0;
$secret_number = rand(1,10);
session_register("secret_number");
session_register("count");
} else {
$count++;
echo "<h1>Wrong ($count)</h1>";
}
}
?>
<form method=post>
Guess :<input type=text name=num velue=<?=$secret_number?>>
<input type=submit name=submit value=submit>
</form>



เป็นเกมทายตัวเลข 1-10 โดยใช้ session เก็บจำนวนครั้งของการทาย

เกมมันจะทำงานได้สมบูรณ์ เมื่อ register_globals "on"

ถ้าเป็น off เมื่อไหร่ ก็ไม่ทำงานแล้วครับ
บันทึกการเข้า



EThaiZone
เจ้าพ่อโลลิค่อน
เจ้าพ่อบอร์ดเสียว
*

พลังน้ำใจ: 321
ออฟไลน์ ออฟไลน์

กระทู้: 12,516



ดูรายละเอียด
« ตอบ #5 เมื่อ: 07 เมษายน 2007, 12:20:41 »

ถ้าเป็น off เขียนแบบนี้ครับ

ใช้ session_start();  ขึ้นหัวสุดทุกครั้ง

แล้วเรีกยใช้ตัวแปรในรูป

$_SESSION['array']

อย่าง  $secret_number ก็มาใช้ $_SESSION['secret_number']
อะไรแบบนี้ครับ

session_register ไม่จำเป็นต้องใช้เลยครับ
บันทึกการเข้า

Newbies
สมุนแก๊งเสียว
*

พลังน้ำใจ: 42
ออฟไลน์ ออฟไลน์

กระทู้: 554



ดูรายละเอียด
« ตอบ #6 เมื่อ: 07 เมษายน 2007, 12:50:43 »

อ้างจาก: "EThaiZone"
ถ้าเป็น off เขียนแบบนี้ครับ

ใช้ session_start();  ขึ้นหัวสุดทุกครั้ง

แล้วเรีกยใช้ตัวแปรในรูป

$_SESSION['array']

อย่าง  $secret_number ก็มาใช้ $_SESSION['secret_number']
อะไรแบบนี้ครับ

session_register ไม่จำเป็นต้องใช้เลยครับ



รบกวนเขียนโปรแกรมข้างบนใหม่ด้วยครับ จะได้เข้าใจ
บันทึกการเข้า



jatuphum
ก๊วนเสียว
*

พลังน้ำใจ: 18
ออฟไลน์ ออฟไลน์

กระทู้: 312



ดูรายละเอียด เว็บไซต์
« ตอบ #7 เมื่อ: 07 เมษายน 2007, 13:15:03 »

โค๊ด:

<?
session_start();

if(!isset($_SESSION['secret_number'])) { $_SESSION['secret_number'] = rand(1,10); $_SESSION['count']=0; }
session_register("secret_number");
session_register("count");

   if($_POST["num"]) {
      if($_POST["num"]==$_SESSION['secret_number']) {
         $_SESSION['count']++;
         echo "<h1>Yo ! Correct ($_SESSION['count'])</h1>";
         $_SESSION['secret_number'] = '' ;
         $_SESSION['count']=0;
         $_SESSION['secret_number'] = rand(1,10);
      } else {
         $_SESSION['count'] ++;
         echo "<h1>Wrong ($_SESSION['count'])</h1>";
      }
   }
?>
<form method=post>
Guess :<input type=text name=num velue=<?=$_SESSION['secret_number']?>>
<input type=submit name=submit value=submit>
</form>


ไม่รู้ว่าถูกเปล่าลองดูครับ  Tongue
บันทึกการเข้า

Newbies
สมุนแก๊งเสียว
*

พลังน้ำใจ: 42
ออฟไลน์ ออฟไลน์

กระทู้: 554



ดูรายละเอียด
« ตอบ #8 เมื่อ: 07 เมษายน 2007, 13:38:24 »

อ้างจาก: "jatuphum"
โค๊ด:

<?
session_start();

if(!isset($_SESSION['secret_number'])) { $_SESSION['secret_number'] = rand(1,10); $_SESSION['count']=0; }
session_register("secret_number");
session_register("count");

   if($_POST["num"]) {
      if($_POST["num"]==$_SESSION['secret_number']) {
         $_SESSION['count']++;
         echo "<h1>Yo ! Correct ($_SESSION['count'])</h1>";
         $_SESSION['secret_number'] = '' ;
         $_SESSION['count']=0;
         $_SESSION['secret_number'] = rand(1,10);
      } else {
         $_SESSION['count'] ++;
         echo "<h1>Wrong ($_SESSION['count'])</h1>";
      }
   }
?>
<form method=post>
Guess :<input type=text name=num velue=<?=$_SESSION['secret_number']?>>
<input type=submit name=submit value=submit>
</form>


ไม่รู้ว่าถูกเปล่าลองดูครับ  Tongue



โอ้ พอเข้าใจแ้ล้วครับ ขอบคุณทุกความเห็นครับ
บันทึกการเข้า



moonoi
สมุนแก๊งเสียว
*

พลังน้ำใจ: 14
ออฟไลน์ ออฟไลน์

กระทู้: 771



ดูรายละเอียด
« ตอบ #9 เมื่อ: 07 เมษายน 2007, 13:59:20 »

โค๊ด:
<?
ini_set(register_globals','On');

PHP CODE......

?>
บันทึกการเข้า
Newbies
สมุนแก๊งเสียว
*

พลังน้ำใจ: 42
ออฟไลน์ ออฟไลน์

กระทู้: 554



ดูรายละเอียด
« ตอบ #10 เมื่อ: 07 เมษายน 2007, 14:20:01 »

อ้างจาก: "moonoi"
โค๊ด:
<?
ini_set(register_globals','On');

PHP CODE......

?>



อันนี้ลองแล้วครับ ใช้ไม่ได้
บันทึกการเข้า



EThaiZone
เจ้าพ่อโลลิค่อน
เจ้าพ่อบอร์ดเสียว
*

พลังน้ำใจ: 321
ออฟไลน์ ออฟไลน์

กระทู้: 12,516



ดูรายละเอียด
« ตอบ #11 เมื่อ: 07 เมษายน 2007, 16:26:15 »

อ้างจาก: "Newbies"
อ้างจาก: "moonoi"
โค๊ด:
<?
ini_set(register_globals','On');

PHP CODE......

?>



อันนี้ลองแล้วครับ ใช้ไม่ได้


คุณใช้ไปทั้ง
ini_set(register_globals','On');
หรอืเปล่าคัรบ ?

เครื่องหมาย ' มันขาดไปอะ มันต้อง
ini_set('register_globals','On');
บันทึกการเข้า

icez
Verified Seller
หัวหน้าแก๊งเสียว
*

พลังน้ำใจ: 296
ออฟไลน์ ออฟไลน์

กระทู้: 2,879



ดูรายละเอียด
« ตอบ #12 เมื่อ: 08 เมษายน 2007, 13:11:30 »

register_globals ต้องทำงานก่อน code ทำงานครับ ไม่งั้นก็ใช้ไม่ได้

<?php
session_start();

foreach(array($_GET, $_POST, $_COOKIE, $SESSION) as $req)
extract($req, EXTR_SKIP);



เอา code นี้ไปใส่ตรงหัวของ script นะครับ ลองดู (วิธีแก้ปัญหาอย่างง่าย)
บันทึกการเข้า

THZHost SSD Hosting ไทย/สิงคโปร์ พร้อม firewall ป้องกันการยิงเว็บ + scan ไวรัสในเว็บ
หน้า: [1]   ขึ้นบน
พิมพ์