ช่วยด้วยคับ เขียนโค๊ตเสร็จพอ ทดสอบแล้ว error Notice: Undefined variable

สำหรับผู้ที่ เริ่มต้น Programming - PHP มีอะไร แนะนำ หรือข้อสงสัยต้องบอร์ด นี้ คนที่มีความรู้ แบ่งปันคนอื่นบ้างนะ ปัญหาการเขียนโปรแกรม แบบ OOP Session Cookies php network

Moderators: mindphp, ผู้ดูแลกระดาน

reet2506
PHP Newbie
PHP Newbie
Posts: 4
Joined: 03/08/2011 10:42 pm

ช่วยด้วยคับ เขียนโค๊ตเสร็จพอ ทดสอบแล้ว error Notice: Undefined variable

Post by reet2506 »

Code: Select all

<?php 
$host = "localhost";
$user = "root"; 
$passwd = "reetreet"; 
$dbname = "register";
$tbl_name="members"
mysql_connect($host,$user,$passwd) or die("ติดต่อ Host ไม่ได้");
mysql_select_db($dbname) or die("ติดต่อฐานข้อมูลไม่ได้");
$sql = "insert into `userinfo` ( `logname` , `pw` ,  `name` , `address` , `age` , `gender` , `ads`, `hobby` , `hobby2` , `hobby3` , `hobby4` , `email` )
 values ('$logname', '$psswd', '$name', '$address', '$age', '$gender', '$Uknow', '$hobby1', '$hobby2', '$hobby3', '$hobby4', '$email' )";
mysql_query("set NAMES tis620");
$sqlquery=mysql_db_query($dbname, $sql); 
$checkadd = "select * from `userinfo` where logname='$logname' ";
$result = mysql_db_query($dbname, $checkadd);
$num=mysql_num_rows($result);
      if ($num==1)
      {
          print"<br>เพิ่มข้อมูลผู้ใช้ลงในฐานข้อมูลเรียบร้อยแล้ว ";
      }elseif($num>=1)
              {
              print"<br>ชื่อผู้ใช้งานซ้ำ กรุณาใช้ชื่ออื่น ";
              }else
                  {
                  print"ระบบขัดข้อง หรือ มีข้อผิดพลาด !!!";
                  };
mysql_close();
  ?>

พอตอน run


Notice: Undefined variable: logname in C:\xampp\htdocs\ProjectPHP\AddData.php on line 9

Notice: Undefined variable: psswd in C:\xampp\htdocs\ProjectPHP\AddData.php on line 9

Notice: Undefined variable: name in C:\xampp\htdocs\ProjectPHP\AddData.php on line 9

Notice: Undefined variable: address in C:\xampp\htdocs\ProjectPHP\AddData.php on line 9

Notice: Undefined variable: age in C:\xampp\htdocs\ProjectPHP\AddData.php on line 9

Notice: Undefined variable: gender in C:\xampp\htdocs\ProjectPHP\AddData.php on line 9

Notice: Undefined variable: Uknow in C:\xampp\htdocs\ProjectPHP\AddData.php on line 9

Notice: Undefined variable: hobby1 in C:\xampp\htdocs\ProjectPHP\AddData.php on line 9

Notice: Undefined variable: hobby2 in C:\xampp\htdocs\ProjectPHP\AddData.php on line 9

Notice: Undefined variable: hobby3 in C:\xampp\htdocs\ProjectPHP\AddData.php on line 9

Notice: Undefined variable: hobby4 in C:\xampp\htdocs\ProjectPHP\AddData.php on line 9

Notice: Undefined variable: email in C:\xampp\htdocs\ProjectPHP\AddData.php on line 9

Deprecated: Function mysql_db_query() is deprecated in C:\xampp\htdocs\ProjectPHP\AddData.php on line 11

Deprecated: mysql_db_query() [function.mysql-db-query]: This function is deprecated; use mysql_query() instead in C:\xampp\htdocs\ProjectPHP\AddData.php on line 11

Notice: Undefined variable: logname in C:\xampp\htdocs\ProjectPHP\AddData.php on line 12

Deprecated: Function mysql_db_query() is deprecated in C:\xampp\htdocs\ProjectPHP\AddData.php on line 13

Deprecated: mysql_db_query() [function.mysql-db-query]: This function is deprecated; use mysql_query() instead in C:\xampp\htdocs\ProjectPHP\AddData.php on line 13
ระบบขัดข้อง หรือ มีข้อผิดพลาด !!!
Last edited by mindphp on 03/08/2011 11:04 pm, edited 2 times in total.
Reason: ครอบโค้ด [code] Code ของท่าน [/code] ชื่อกระทู้ไม่สื่อถึงปัญหา
reet2506
PHP Newbie
PHP Newbie
Posts: 4
Joined: 03/08/2011 10:42 pm

Re: ช่วยด้วยคับ เขียนโค๊ตเสร็จพอ ทดสอบแล้วerror

Post by reet2506 »

ช่วยดูไห้ที่นะคับ
User avatar
mindphp
ผู้ดูแลระบบ MindPHP
ผู้ดูแลระบบ MindPHP
Posts: 25479
Joined: 22/09/2008 6:18 pm
Contact:

Re: ช่วยด้วยคับ เขียนโค๊ตเสร็จพอ ทดสอบแล้ว error Notice: Undefined variable

Post by mindphp »

ตัวแปล $logname และอื่นๆ ตามที่ Notice -ขึ้นมา ไม่ได้กำหนดค่าก่อนใช้งานครับ
ติดตาม VDO: http://www.youtube.com/c/MindphpVideoman
ติดตาม FB: https://www.facebook.com/pages/MindphpC ... 9517401606
หมวดแชร์ความรู้: https://www.mindphp.com/forums/viewforum.php?f=29
รับอบรม และพัฒนาระบบ: https://www.mindphp.com/forums/viewtopic.php?f=6&t=2042
touleg
PHP Super Member
PHP Super Member
Posts: 480
Joined: 25/01/2010 11:57 pm
Contact:

Re: ช่วยด้วยคับ เขียนโค๊ตเสร็จพอ ทดสอบแล้ว error Notice: Undefined variable

Post by touleg »

ตัวแปรพวกนี้ไม่มีค่าครับ มันยังไม่ได้รับค่าเลย อยู่ดีๆเอามาใช้เลยมันก็เลยไม่รู้จะเอาค่าจากไหนมาใช้

Code: Select all

'$logname', '$psswd', '$name', '$address', '$age', '$gender', '$Uknow', '$hobby1', '$hobby2', '$hobby3', '$hobby4', '$email'
ดูจากโค้ดแล้วน่าจะเป็นโค้ดที่รับค่ามาจากแบบฟอร์มที่กรอกเข้ามา แล้วส่งมาที่หน้านี้

ก่อนอื่นก็ให้เก็บค่าที่ส่งมาก่อนจะเอามาใช้นะครับ เช่น

Code: Select all

$logname = $_POST['logname'];
reet2506
PHP Newbie
PHP Newbie
Posts: 4
Joined: 03/08/2011 10:42 pm

Re: ช่วยด้วยคับ เขียนโค๊ตเสร็จพอ ทดสอบแล้ว error Notice: Undefined variable

Post by reet2506 »

นี้คิอฟอร์มของมันอะ

Code: Select all

<?php require_once('Connections/ProjectPHP.php'); ?>
<?php
mysql_select_db($database_ProjectPHP, $ProjectPHP);
$query_Recordset1 = "SELECT * FROM register";
$Recordset1 = mysql_query($query_Recordset1, $ProjectPHP) or die(mysql_error());
$row_Recordset1 = mysql_fetch_assoc($Recordset1);
$totalRows_Recordset1 = mysql_num_rows($Recordset1);
?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-874" />
<title>Untitled Document</title>
<style type="text/css">
<!--
#apDiv1 {
	position:absolute;
	left:0px;
	top:1px;
	width:800px;
	height:336px;
	z-index:1;
}
#apDiv2 {
	position:absolute;
	left:1px;
	top:339px;
	width:254px;
	height:601px;
	z-index:2;
}
#apDiv3 {
	position:absolute;
	left:1px;
	top:14px;
	width:794px;
	height:19px;
	z-index:3;
}
#apDiv4 {
	position:absolute;
	left:258px;
	top:338px;
	width:587px;
	height:602px;
	z-index:4;
}
-->
</style>
</head>

<body>
<div id="apDiv4">
<form id="formregis" name="formregis" method="post" action="AddData.php"  >
    <table width="585" height="257" border="0">
      <tr>
        <td width="103">ชื่อล๊อกอิน</td>
        <td width="267"><label for="textfield"></label>
        <input type="text" name="logname" id="logname" /></td>
        <td width="66"><div align="left">เพศ</div></td>
        <td width="131"><p>
          <label>
            <input type="radio" name="gender" value="male" />
            ชาย</label>
          <label>
<input type="radio" name="gender" value="female" /> 
หญิง</label>
<br />
          <label></label>
<br />
        </p></td>
      </tr>
      <tr>
        <td height="40">รหัสผ่าน</td>
        <td><label for="textfield"></label>
        <input type="password" name="psswd" id="psswd" /></td>
        <td>อายุ</td>
        <td><label for="select"></label>
          <select name="age" id="age">
            <option value="9-18" selected="selected">9-18 ปี</option>
            <option value="19-25">19-25 ปี</option>
            <option value="26-45">26-45 ปี</option>
          </select>
</td>
      </tr>
      <tr>
        <td>ชื่อ-นามสกุล</td>
        <td><label for="textfield"></label>
        <input type="text" name="name" id="name" /></td>
        <td>งานอดิเรก</td>
        <td><input type="checkbox" name="hobby1" value="sport" id="hobby1" />
        <label for="checkbox">เล่นกีฬา<br />
        <input type="checkbox" name="hobby2" value="reading" id="hobby2" />
        อ่านหนังสือ<br />
        <input type="checkbox" name="hobby3" value="game" id="hobby3" />
        เกมส์</label></td>
      </tr>
      <tr>
        <td>ที่อยู่</td>
        <td><label for="textarea"></label>
        <textarea name="address" cols="30" rows="5" id="address"></textarea></td>
        <td>&nbsp;</td>
        <td>&nbsp;</td>
      </tr>
      <tr>
        <td>e-mail</td>
        <td>&nbsp;</td>
        <td><input type="submit" name="Submit" value="ส่งข้อมูล" /></td>
        <td><input name="Reset" type="reset" id="Reset" value="ล้างข้อมูล" /></td>
      </tr>
    </table>
    <div align="left"></div>
</form>
</div>
<dd>
<div id="apDiv1"><img src="picture/head.jpg" width="846" height="350" /></div>
<div id="apDiv2"><img src="picture/left.jpg" width="254" height="535" /></div>
</body>
</html>
<?php
mysql_free_result($Recordset1);
?>
Last edited by mindphp on 05/08/2011 2:37 pm, edited 1 time in total.
Reason: ครอบโค้ด [code] Code ของท่าน [/code]
User avatar
mindphp
ผู้ดูแลระบบ MindPHP
ผู้ดูแลระบบ MindPHP
Posts: 25479
Joined: 22/09/2008 6:18 pm
Contact:

Re: ช่วยด้วยคับ เขียนโค๊ตเสร็จพอ ทดสอบแล้ว error Notice: Undefined variable

Post by mindphp »

ตามนี้เลยครับ
touleg wrote:ตัวแปรพวกนี้ไม่มีค่าครับ มันยังไม่ได้รับค่าเลย อยู่ดีๆเอามาใช้เลยมันก็เลยไม่รู้จะเอาค่าจากไหนมาใช้

Code: Select all

'$logname', '$psswd', '$name', '$address', '$age', '$gender', '$Uknow', '$hobby1', '$hobby2', '$hobby3', '$hobby4', '$email'
ดูจากโค้ดแล้วน่าจะเป็นโค้ดที่รับค่ามาจากแบบฟอร์มที่กรอกเข้ามา แล้วส่งมาที่หน้านี้

ก่อนอื่นก็ให้เก็บค่าที่ส่งมาก่อนจะเอามาใช้นะครับ เช่น

Code: Select all

$logname = $_POST['logname'];
ติดตาม VDO: http://www.youtube.com/c/MindphpVideoman
ติดตาม FB: https://www.facebook.com/pages/MindphpC ... 9517401606
หมวดแชร์ความรู้: https://www.mindphp.com/forums/viewforum.php?f=29
รับอบรม และพัฒนาระบบ: https://www.mindphp.com/forums/viewtopic.php?f=6&t=2042
reet2506
PHP Newbie
PHP Newbie
Posts: 4
Joined: 03/08/2011 10:42 pm

Re: ช่วยด้วยคับ เขียนโค๊ตเสร็จพอ ทดสอบแล้ว error Notice: Undefined variable

Post by reet2506 »

mindphp wrote:ตามนี้เลยครับ
touleg wrote:ตัวแปรพวกนี้ไม่มีค่าครับ มันยังไม่ได้รับค่าเลย อยู่ดีๆเอามาใช้เลยมันก็เลยไม่รู้จะเอาค่าจากไหนมาใช้

Code: Select all

'$logname', '$psswd', '$name', '$address', '$age', '$gender', '$Uknow', '$hobby1', '$hobby2', '$hobby3', '$hobby4', '$email'
ดูจากโค้ดแล้วน่าจะเป็นโค้ดที่รับค่ามาจากแบบฟอร์มที่กรอกเข้ามา แล้วส่งมาที่หน้านี้

ก่อนอื่นก็ให้เก็บค่าที่ส่งมาก่อนจะเอามาใช้นะครับ เช่น

Code: Select all

$logname = $_POST['logname'];

เอาโคตไปใส่ตรงหน้าใหนหรอ
touleg
PHP Super Member
PHP Super Member
Posts: 480
Joined: 25/01/2010 11:57 pm
Contact:

Re: ช่วยด้วยคับ เขียนโค๊ตเสร็จพอ ทดสอบแล้ว error Notice: Undefined variable

Post by touleg »

ผมจะจำลองโค้ดให้ดูนะครับเวลาส่งค่าผ่านฟอร์ม ที่เหลือเอาไปประยุกต์ใช้เองนะครับ

ตัวอย่างโค้ดหน้าฟอร์ม (form.html)

Code: Select all

<form action="getvalue.php" method="post">
ชื่อ <input type="text" name="fname" /><br />
<input type="submit" value="Submit" />
</form>
getvalue.php รับค่าจากฟอร์มที่ส่งมาให้

Code: Select all

<?php
//รับค่ามาจากฟอร์มก่อน
$name = $_POST['fname'];
echo $name;  //ทดสอบแสดงผลค่าที่ได้ จากตัวแปร $name
?>
ให้สังเกตที่

Code: Select all

<form action="getvalue.php" method="post">
และ
<input type="text" name="fname" />
จะเห็นว่า form มี method เป็น post
และ input มีชื่อว่า fname

ดังนั้นเวลาเขียน php มารับค่าจะต้องพิจารณาด้วยว่าค่าที่ส่งมาเป็นแบบไหน
แบบ post หรือ get
- ถ้าเป็นแบบ post เวลารับค่าก็ต้องใช้

Code: Select all

$_POST['ชื่อ input']
 

- ถ้าเป็นแบบ get เวลารับค่าก็ต้องใช้

Code: Select all

$_GET['ชื่อ input'];
 
เวลารับค่ามาก็ให้สร้างตัวแปรมาเก็บค่าด้วยเช่น

Code: Select all

$name = $_POST['fname'];
 
แล้วค่อยเอาตัวแปรไปใช้งาน

แต่ถ้าอยากใช้งานโดยไม่ต้องรับค่าแบบนี้ คือใช้แบบเคยทำมาคือเอาชื่อ input มาเป็นตัวแปรเลย
แบบนั้นต้องไปเปิดการใช้งาน register_global ก่อน แต่ไม่ค่อยมีใครเค้าทำกันหรอก มันไม่ปลอดภัยกับค่าตัวแปร แนะนำให้ทำแบบที่อธิบายนะครับ ให้ใช้ $_POST หรือ $_GET เสมอเวลารับค่่ามาจาก form หรือจาก url ก็แล้วแต่

ไม่รู้จะเข้าใจหรือป่าวนะ
Post Reply
  • Similar Topics
    Replies
    Views
    Last post

Return to “Programming - PHP”

Who is online

Users browsing this forum: No registered users and 22 guests