อยากให้ช่วยดู code ว่าผิดพลาดตรงไหนครับ T^T

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

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

โอคิว

อยากให้ช่วยดู code ว่าผิดพลาดตรงไหนครับ T^T

โพสต์ที่ยังไม่ได้อ่าน โดย โอคิว »

คือผมจะทำการรับค่าข้อมูลที่กรอกจาก Android App ไปเก็บยัง mysql โดยใช้ php เป็นตัวกลางในการเชื่อม แต่เมื่อทดสอบไฟล์ php แล้วมันขึ้นว่า
Notice: Undefined variable: dn in C:\wamp\www\addDATA1.php on line 3
Fatal error: Uncaught exception 'PDOException' with message 'invalid data source name' in C:\wamp\www\addDATA1.php on line 3

อันนี้ code ครับ

<?php
include 'connectDB.php';
$dbh = new PDO($dn, $username, $passwd, $option);
if($_POST['isAdd']=='true'){
$id = $_POST['id'];
$sname = $_POST['sname'];
$des = $_POST['des'];
$pass = $_POST['pass'];
$instra = $_POST['instra'];
$email = $_POST['email'];
$date = date('Y-m-d');

$dbh->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_EXCEPTION);
$stmt = $dbh->prepare('INSERT INTO request (id,sname,des,pass,instra,email)
VALUES($id,$sname,$des,$pass,$instra,$email,$date');
try
{
$stmt->execute();

}
catch (PDOException $e)
{
echo "cannot insert";
}
}

อันนี้ code ในส่วนที่จะทำการ insert ข้อมูลลงฐานข้อมูลที่เป็น Android

public void insert()
{
try{
String id = "null";
String sname = EditInput1.getText().toString().trim();
String des = EditInput2.getText().toString().trim();
String pass = EditInput3.getText().toString().trim();
String instra = EditInput4.getText().toString().trim();
String email = EditInput5.getText().toString().trim();

ArrayList<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>();
nameValuePairs.add(new BasicNameValuePair("isAdd","true"));
nameValuePairs.add(new BasicNameValuePair("id", id));
nameValuePairs.add(new BasicNameValuePair("sname", sname));
nameValuePairs.add(new BasicNameValuePair("des", des));
nameValuePairs.add(new BasicNameValuePair("pass", pass));
nameValuePairs.add(new BasicNameValuePair("instra", instra));
nameValuePairs.add(new BasicNameValuePair("email", email));

HttpClient httpclient = new DefaultHttpClient();
HttpPost httppost = new HttpPost("http://192.168.1.5/addDATA.php");
httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs,"UTF-8"));
httpclient.execute(httppost);
clsText();


} catch (Exception e)
{
Log.d("log_err", "Error in http connection" + e.toString());
}
}

ปล. ผมใช้ wampserver ในการจำลอง server ครับ

ช่วยด้วยนะครับ ขอบคุณครับ
chbbk
PHP VIP Members
PHP VIP Members
โพสต์: 2969
ลงทะเบียนเมื่อ: 08/09/2014 10:34 am

Re: อยากให้ช่วยดู code ว่าผิดพลาดตรงไหนครับ T^T

โพสต์ที่ยังไม่ได้อ่าน โดย chbbk »

error นั้นบอกว่า ไม่รู้จักหรือไม่มี dn ค่ะ
เท่าที่ดูใน code ที่แปะมาก็ไม่เห็นว่าจะมี dn ประกาศไว้ตรงไหนเลย
dn นี่อยู่ใน connectDB.php หรือเปล่าคะ?

ลองเอาโค้ดที่อยู่ใน connectDB.php มาแปะในaddDATA1.phpแล้วรันใหม่ดูค่ะว่าหายมั้ย
ดูจากที่ include ถ้าไฟล์ connectDB ไม่ได้อยู่โฟลเดอร์เดียวกับ addDATA1 ก็น่าจะ path ผิดล่ะค่ะ
Trust me, I'm a Programmer
โอคิว

Re: อยากให้ช่วยดู code ว่าผิดพลาดตรงไหนครับ T^T

โพสต์ที่ยังไม่ได้อ่าน โดย โอคิว »

ครับ ตอนนี้ได้แล้วครับ

แต่ติดปัญหาเรื่องที่ เวลาทำการ insert ข้อมูลเข้า mysql แล้ว มันไม่มีข้อมูลถูก insert เข้าไปเลยครับ
ทดสอบผ่านสมาทโฟนครับ
ลองรัน ใน browser สามารถเข้าถึงไฟล์ php ได้ครับโดยผ่าน http://192.168.1.5/addDATA1.php
ได้ครับ แต่เมื่อลองไปตรวจสอบในฐานข้อมูล กลับไม่มีข้อมูลถูกแอดเข้ามาครับ T^T

ขอบคุณที่ช่วยตอบปัญหานะครับ
ตอบกลับโพส
  • Similar Topics
    ตอบกลับ
    แสดง
    โพสต์ล่าสุด

ผู้ใช้งานขณะนี้

สมาชิกกำลังดูบอร์ดนี้: Bing [Bot] และบุคลทั่วไป 9