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

ตอบกระทู้

รูปแสดงอารมณ์
:icon_plusone: :like: :plusone: :gfb: :-D :) :( :-o 8O :? 8) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: :angry: :baa: :biggrin:
รูปแสดงอารมณ์อื่นๆ

BBCode เปิด
[img] เปิด
[url] เปิด
[Smile icon] เปิด

กระทู้แนะนำ
   

มุมมองที่ขยายได้ กระทู้แนะนำ: อยากให้ช่วยดู code ว่าผิดพลาดตรงไหนครับ T^T

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

โดย โอคิว » 29/01/2015 12:51 pm

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

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

ขอบคุณที่ช่วยตอบปัญหานะครับ

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

โดย chbbk » 29/01/2015 12:08 pm

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

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

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

โดย โอคิว » 28/01/2015 10:53 pm

คือผมจะทำการรับค่าข้อมูลที่กรอกจาก 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 ครับ

ช่วยด้วยนะครับ ขอบคุณครับ

ข้างบน