PDA

View Full Version : مشکل در اتصال به دیتابیس



imohammad
سه شنبه 03 مرداد 1391, 01:04 صبح
سلام
دوستان اگه ممکنه بگین این کد چه ایرادی داره؟

<form method="post">
<label>E-Mail</label>
<input type="text" name="email" />
<label>Name</label>
<input type="text" name="uname" />
<input type="submit" />
</form>
<?php
//Import config.php and connect tu db
include('config.php');
$con = mysql_connect($db['host'],$db['user'],$db['pass']);
mysql_select_db($db['name']);
$query = "INSERT INTO 'users'('email','name','active','key') VALUES('".$_POST['email']."','".$_GET['uname']."','0','aaabbbccc)";
$qry = mysql_query($query);
echo mysql_error($con);
echo mysql_error();
mysql_close($con);
?>
همش ارور زیر رو میده:

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''users'('email','name','active','key') VALUES('xxx@xxx.xx','','0','aaabb' at line 1
ممنون

h_qorbani
سه شنبه 03 مرداد 1391, 07:41 صبح
سلام
فرمتو به اين صورت بنويس:

<form name="" id="" action="" method="post" enctype="multipart/form-data">

h_qorbani
سه شنبه 03 مرداد 1391, 07:48 صبح
عذر ميخام اين خطا رو كه گذاشته بوديو نديده بودم

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''users'('email','name','active','key') VALUES('xxx@xxx.xx','','0','aaabb' at line 1


چك كن مطمئن شي فيلدي نداري كه داده تكراري قبول نكنه!!!
چون هر بار كه اجرا ميكني ، يسري از داده هات تكراري وارد ميشن و اين براي فيلدهايي با خاصيت Unique خطاي Syntax ميده.

desatir7316
سه شنبه 03 مرداد 1391, 08:23 صبح
دو طرف اسم فیلد هات از کوتیشن استفاده نکن! باید از علامت ` به جای ' استفاده کنی
ته aaabbbccc هم با کوتیشن نبستی یعنی فقط یه طرفش کوتیشن گذاشتی
راستی فرمت هم به صورت post مشخص کردی ولی uname رو با get گرفتی


$query = "INSERT INTO `users`(`email`,`name`,`active`,`key`) VALUES('".$_POST['email']."','".$_POST['uname']."','0','aaabbbccc')";

imohammad
سه شنبه 03 مرداد 1391, 11:14 صبح
ممنون از راهنماییتون کد رو به صورت زیر تغییر دادم

$query = "INSERT INTO `users`(`email`,`name`,`active`,`key`) VALUES(`".$_POST['email']."`,`".$_POST['uname']."`,`0`,`aaabbbccc`)";

ولی وقتی فرم ارسال میشه خطای زیر رو میگیره

Unknown column 'xxxxx@xxxxxx.xx' in 'field list'

desatir7316
سه شنبه 03 مرداد 1391, 11:37 صبح
دور اسم فیلد ها از ` استفاده کن و دور مقدار ها (values) از کوتیشین ' استفاده کن
مثل همونی که اون بالا نوشتم

imohammad
سه شنبه 03 مرداد 1391, 11:59 صبح
ممنون رفیق درست شد:قلب: