مشکل در ارسال query به دیتا بیس

maaha

Member
کد:
connected successfully
Array()
ارایه خالیه.مشکل ار mysql نمیتونه باشه؟:rose:
 

k2-4u

Well-Known Member
نه مشکل از سروری است که روی pc نصب کردین
از چه برنامه ای استفاده می کنید؟

چند بار به شکل های مختلف تست کنید
(خارج از این کد)
ببینید متغییر های get و post خالی میرسن

$_request رو هم تست کنید
 

maaha

Member
از wamp server استفاده میکنم.ورژن2.اره امتحان کردم.اطلاعات 2 تا تکست باکس رو فرستادم به دیتا بیس.درست منتقل شد.چشم.امتحان میکنم.بازم ممنون از توجه تون.:rose:
 

saeed edrisi

New Member
Mysql syntax error

سلام دوستان
امیدوارم حالتون خوب باشه.
من روی یه برنامه سورس باز خواستم تعدادی فیلد رو اضافه کنم به یک جدول که کردم. وقتی خواستم از طریق فرم داده های جدید رو بگیرم داخل جدول ذخیره کنم پیام خطای:

Error: 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' (FName, LName, shenasname, fatherName, mellicode, tell, add, edu, userid' at line 1

رو نشونم داد. گفتم خب حتما بین اونهمه کد یا سزین ها مشکل دارم به خاطر همین یه جای کار مشکل داره.
اومدم داخل یه فایل php متغیر تعریف کردم و با sql query این متغیر ها داخل جدول ذخیره کنم که دیدم بازم همین مشکل وجود داره، کلافم کرده ...نمیدونم مشکل کار کجاست .. دوستان اگه ممکنه منو راهنمایی کنید.

اطلاعات مربوطه رو در زیر براتون میزارم .
-------------------------------------------------------------------------------
<?php
$name="Saeed";
$family="edrisi";
$shenasname="390";
$fname="HASSANGOLI";
$mellicode="219219220";
$tell="0987654321";
$add="khanbabakhan .................";
$edu="DIPLOMA";
$user="SAEEDEDRISI";
$password="XXXNX";
$email="SAEED [email protected]";

$con = mysql_connect("localhost","shamizi_shamizi","doroste");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}

mysql_select_db("shamizi_site", $con);

$sql="INSERT INTO 'users' (FName, LName, shenasname, fatherName, mellicode, tell, add, edu, userid, password, email)
VALUES
('$name', '$family', '$shenasname', '$fname', '$mellicode', '$tell', '$add', '$edu', '$user', '$password', '$email')";

if (!mysql_query($sql,$con))
{
die('Error: ' . mysql_error());
}
echo "1 record added";

mysql_close($con)
?>

-----------------------------------------------------


اینم بگم در جدول فوق (users ) یک فیلد دیگه اول از همه دارم که Auto increase هست و بقیه فیلد ها text با مقدار پیشفرض null هست .
و اینکه تو INSERT INTO نام جدول رو با کاما یا بدون کاما و نام جدول ها رو با کاما و بدون کاما و حتی متغیر ها رو با کاما و بدون کاما هم تست کردم .
و بازم جالب اینکه وقتی از فرم قدیمی همون برنامه سورس باز که استفاده میکنم مشکلی در رابطه با ذخیره داده های خودش داخل جدول نداره .


ممنون میشم اگه راهنماییم کنین
 

saeed edrisi

New Member
چطوری کد ها رو طوری میزارین که تو این انجمن چپ به راست دیده میشه ؟ ! من که پیدا نکردم ... لطفا خودتون داخل یه ادیتوری بزارین تا راحت تر بشه کد ها رو خوند ...
بازم ممنون.
 

hasanak852

Active Member
اسم فیلدها رو بین کاراکتر ` و مقادیر رو بین کاما بذار باید مشکلت حل شه
اگه نشد برو تو phpmyadmin و تو همون جدول مقادیری رو Insert کن بعد کد پی اچ پی کوئریش رو ببین میفهمی مشکلت چیه
***************************************
برای اینکه کد بذاری تو انجمن باید کدها رو بین
کد:
 و
بنویسی تا چپ به راست نشون داده بشه:green:
 

saeed edrisi

New Member
ممنون از شما
ولی هر 2 تا کار رو انجام دادم کاما که نمیشه ... ولی تو phpmyadmin هم خطا میده ... query که خود php myadmin هم درست میکنه برا اون هم خطا میده .
البته این رو هم بگم که تو کد قبلی که براتون فرستادم نام یکی از فیلد ها مشکل داشت که اسمشو گذاشته بودم add که الان متوجه شدم که رزو شده هست . ولی بعد تغییر نام این فیلد هم باز همین خطا رو نشون میده.

این query توسط خود php myadmin درست شده :
کد:
INSERT INTO `users`(`id`, `FName`, `LName`, `shenasname`, `fatherName`, `mellicode`, `tell`, `address`, `education`, `userid`, `password`, `email`) VALUES ([value-1],[value-2],[value-3],[value-4],[value-5],[value-6],[value-7],[value-8],[value-9],[value-10],[value-11],[value-12])

که این خطا رو نشون میده
کد:
#1064 - 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 '[11],[value-2],[value-3],[value-4],[value-5],[value-6],[value-7],[value-8],[valu' at line 1

شاید به ذهنتون برسه که فیلد id عدد هست و auto increase که اون رو هم به فیلد معمولی تبدیل کردم ولی بازم برای sql query > php myadmin خطا میده .


چیکار کنم ؟؟؟؟؟؟
 

hasanak852

Active Member
PHP:
$id=0;
$fname=$_POST['fname'];
$lname=$_POST['lname'];
$other=$_POST['other'];
mysql_query("INSERT INTO `users`(`id`, `FName`, `LName`, `other`) VALUES ('$id', '$fname','$lname', '$other')");
مقادیر رو بین ' نذاشتی، غیر از این مشکلی نمیبینم!
 

saeed edrisi

New Member
ممنونم دوست عزیز ... بعد 3 روز متوجه اشتباهم شدم ...
در قسمت مشخص کردن فیلد ها بجای کاراکتر ( ` ) از کاراکتر ( ' ) استفاده میکردم ...


پدرم دراومد ...
بازم مرسی
 

saeed edrisi

New Member
راستی کاراکتر ( ` ) با ترکیب کدوم دکمه چاپ میشه ؟ من با کد دسیمال پیدا کردم نوشتم ...
 

MMSHFE

Active Member
با سلام، این کارکتر کنار عدد 1 و بالای کلید tab قرار داره. موفق باشید.
 

جدیدترین ارسال ها

بالا