PDA

View Full Version : error mysql



mozhgan
سه شنبه 25 بهمن 1384, 11:54 صبح
با عرض سلام و تشکر از آقای رضا
من واقعاً معذرت می خوام آخه یک ماهه سوال پرسیدم کسی جوابم و نداد گفتم یه کاری کنم که جوابمو بدین ولی مثل اینکه
اول اینکه من برای error پاین password هم گذاشتم ولی جواب نداد
پرونده پیکربندی شما حاوی تنظیماتی است (کاربر root بدون اسم رمز) که مرتبط با حساب پیش‌فرض MySQL می‌باشد. اجرای MySQL با این پیش‌فرض باعث ورود غیرمجاز می‌شود ، و شما باید این حفره امنیتی را ذرست کنید.
برای 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 'TPlak,RInstall,RNInstall,RBuild,RNBuild,RReport,R NReport) Va

هم دستورش اینه

(query="INSERT INTO plak(,TPlak,RInstall,RNInstall,RBuild,RNBuild,RRep ort,RNReport$
values('','$Number','$Install','$NotInstall','$Bui ld','$NotBuild','$Report','$NotReport
;"('
(RESULT=mysql_query($query) or die(mysql_error$ متغیرهای دو تا صفحه و بانک هم کاملاً درسته
چرا error می ده؟
اگه میشه هر چه زودتر جواب بدین(اگه این جمله مم از نظر قوانین اشکال داره) والا دیگه نمی دونم چی بگم
فقط اینکه
ممنون

reza_rad
سه شنبه 25 بهمن 1384, 12:24 عصر
1- باید برای تغییر password روت برین اینجا:
phpmyadmin->priviledges->edit(root)->change password
حتما با همین آدرس و یا با این دستور :
SET PASSWORD FOR 'user_test'@ '%' = PASSWORD( '**' )

2- شما از توی کدتون tag ها و variable های php رو بردارید و فقط query رو توی phpmyadmin تست کنید.یعنی فقط insert... رو. کدتون رو هم داخل [code] قرار بدید که بشه فهمید دقیقا چیه.

oxygenws
سه شنبه 25 بهمن 1384, 13:10 عصر
من مقداری نوشته تون رو ویرایش کردم تا شاید زیبا تر بشه.
دلیل اینکه پست شما بی پاسخ مونده و یک ماه دنبال جوابش بودین، رعایت نکردن قوانین بوده، پس لطفا حتما قوانین رو بخونید. (و تقریبا مطمئنم که تا همین الان، هنوز نخونده اید!!)

در مورد سوال شما هم، لطف کنید پیش از ارسال کوئری، مقدار $query رو die کنید و نتیجه رو اینجا، در تگ ها code، بنویسید.

موفق باشید.

mozhgan
سه شنبه 25 بهمن 1384, 13:18 عصر
query="INSERT INTO plak values ( '$Number','$Install','$NotInstall','$Build','$NotB uild','$Report','$NotReport)";

mozhgan
سه شنبه 25 بهمن 1384, 13:22 عصر
اگه منظورتون به شکلیه که بالا فرستادم این کار رو هم کردم ولی درست نمی شه
یه سوال دیگه اولین فیلد بالا textbox هستش و باقیش radio bottone هستش ممکنه مشکلش از نوع radio bottone باشه جایی رو نباید تغییر بدم
ممنون که زود به زود جوابمو می دین

mozhgan
سه شنبه 25 بهمن 1384, 13:24 عصر
دسستون هم درد نکنه که نوشته هام رو ویرایش کردین
راست می گین قوانین رو نخوندم
ولی قول می دم امشب بخونم
بازم عذر می خوام

oxygenws
سه شنبه 25 بهمن 1384, 13:30 عصر
خیر، منظورم اینه که کدتون رو به شکل زیر تغییر بدید:


$query="INSERT INTO plak(,TPlak,RInstall,RNInstall,RBuild,RNBuild,RRep ort,RNReport
values('','$Number','$Install','$NotInstall','$Bui ld','$NotBuild','$Report','$NotReport')";
die($query);

mozhgan
سه شنبه 25 بهمن 1384, 17:18 عصر
با دستور بالایی که برای تغییر رمز گفتین رمزشو تغییر دادم ولی الان phpmydmin این error رو میده .

phpMyAdmin tried to connect to the MySQL server, and the server rejected the connection. You should check the host, username and password in config.inc.php and make sure that they correspond to the information given by the administrator of the MySQL server.
الان باید چکار کنم تا درست بشه و اینکه چه طوری بانکی که توی phpmyadmin رو ساختم بتونم مسیرش رو پیدا کنم و اونو همراه برنامه ببرم .
ممنون

mozhgan
سه شنبه 25 بهمن 1384, 17:20 عصر
فعلاً phpmyadmin ندارم تا کد و تغییر بدم چون با کاری که کردم بانکام دیگه نیست
بازم ممنون

reza_rad
سه شنبه 25 بهمن 1384, 17:24 عصر
برید توی دایرکتوری روت phpmyadmin و فایل config.inc.php رو edit کنید. و تمام password ها رو تغییر بدید به همون password ای که برای روت گذاشتید.

البته اگه از روش اول استفاده می کردید بهتر بود.

mozhgan
سه شنبه 25 بهمن 1384, 17:48 عصر
تا اومدم این پیغام رو بفرستم دیدم شما جواب دادین
ممنون
مشکل passworde phpmyadmin رو حل کردم رفتم تو فایل config.inc تغییر دادم بعد دوباره phpmyadmin رو بدون رمز کردم بانکام هم restore کردم کاری که شما گفتین کد رو نوشتم خودمم خیلی تغییر دادم ولی بازم error میده البته error
INSERT INTO plak(,TPlak,RInstall,RNInstall,RBuild,RNBuild,RRep ort,RNReport
values('','','','','','','','')
ممنون که جوابمو زود به زود میدین

oxygenws
سه شنبه 25 بهمن 1384, 23:46 عصر
1- در فایل php.ini، مقدار register_globals رو on کنید و سرور رو دوباره راه اندازی کنید.
2- مقدار "(" یا پرانتز بسته، در آخر RNReport وجود ندارد!!!
3- اون ویرگول اول، بعد از plak( اضافه است، دلیلی نداره همچین چیزی بذارید (احتمالا اولین مقدار داخل single-quote که در بخش values هست، باید حذف بشه)
4- قوانین سایت رو حتما بخونید، همین امشب!
5- برای بار هزارم، کد هاتون رو در تگ های مخصوص code بذارید. (می تونید از بخش "تست" برای تخصص پیدا کردن، استفاده کنید.)

mozhgan
چهارشنبه 26 بهمن 1384, 06:56 صبح
سلام آقای رضا
من بازم عذر می خوام
امروز صبح قوانین رو خوندم دیشب نتونستم فکر کنم الان اونجا هم به من یه اخطار بدن
راستس من یه کاری کردم از یه سایتی یه مطلب رو واسه جوابه یکی از بچه ها فرستادم ولی منبع رو ذکر نکردم من متوجه شدم به من اخطار ندین
مقدار"(' اینجا فرستاد نشد ولی هستش
ویرگول اول هم بخاطر field اول auot_icernment هستش
ممنون

mozhgan
چهارشنبه 26 بهمن 1384, 07:14 صبح
سلام
این کل برنامه هستش همه شرط هارو حذف کردم


error_reporting(E_ERROR);
$db="shahrdary";
$link =mysql_connect("localhost","root","");
if (!$link)
die("couldn t connct to mysql server");
mysql_select_db($db,$link)
or die("coulden t open $db :".mysql_error());
$query="INSERT INTO plak(TPlak,RInstall,RNInstall,RBuild,RNBuild,RRepo rt,RNReport)
values('$Number','$Install','$NotInstall','$Build' ,'$NotBuild','$Report','$NotReport')";
die($query);
$RESULT=mysql_query($query) or die(mysql_error());
echo"<p align='center'><b><span style='background-color: #FF0000'>اطلاعات ارسالی شما
به بانک اطلاعاتی اضافه شد</span></b></p>
";

ممنون

oxygenws
چهارشنبه 26 بهمن 1384, 08:02 صبح
این کد قاعدتا نباید مشکلی داشته باشه!

mozhgan
چهارشنبه 26 بهمن 1384, 08:29 صبح
پس چرا این error رو میده
INSERT INTO plak(TPlak,RInstall,RNInstall,RBuild,RNBuild,RRepo rt,RNReport) values('','','','','','','','')
ببخشید که زیاد می پرسم آخه نمی دونم چی کار کنم به چند نفر هم نشون دادم می گن مشکلی نداره ولی حتماً یه مشکلی داره
اگه می شه زودتر جواب بدین

reza_rad
چهارشنبه 26 بهمن 1384, 08:38 صبح
می تونید script جدول رو بذارید اینجا ببینیم شاید مشکل از جای دیگه باشه.

mozhgan
چهارشنبه 26 بهمن 1384, 09:09 صبح
منظورتون از script جدول چیه من برای جدولام script ننوشتم با phpmyadmin درست کردم .
ممنون که جوابمو می دین

reza_rad
چهارشنبه 26 بهمن 1384, 09:23 صبح
خواهش می کنم.
برای script نیازی نیست حتما خودتون نوشته باشید. خود phpmyadmin این script رو بهتون میده.
از اینجا:
phpmyadmin->(your database)->(your table)->export->go
بعدش اون script جدول رو بهتون نشون میده.

mozhgan
چهارشنبه 26 بهمن 1384, 09:41 صبح
سلام
خیلی ممنون
Script جدول اینه


-- phpMyAdmin SQL Dump
-- version 2.6.1-pl2
-- http://www.phpmyadmin.net
--
-- Host: localhost
-- Generation Time: Feb 14, 2006 at 10:06 PM
-- Server version: 4.0.20
-- PHP Version: 4.3.11
--
-- Database: `shahrdary`
--

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

--
-- Table structure for table `plak`
--

CREATE TABLE `plak` (
`Pid` bigint(20) NOT NULL auto_increment,
`Number` text NOT NULL,
`Install` text NOT NULL,
`NotInstall` text NOT NULL,
`Build` text NOT NULL,
`NotBuild` text NOT NULL,
`Report` text NOT NULL,
`NotReport` text NOT NULL,
UNIQUE KEY `Pid` (`Pid`)
) TYPE=MyISAM AUTO_INCREMENT=1 ;

--
-- Dumping data for table `plak`
--

reza_rad
چهارشنبه 26 بهمن 1384, 09:55 صبح
خانم مژگان شما باید همچین query رو اجرا کنی :


INSERT INTO plak( Number, Install, NotInstall, Build, NotBuild, Report, NotReport )
VALUES (
'$Number', '$Install', '$NotInstall', '$Build', '$NotBuild', '$Report', '$NotReport'
)


باید توی پرانتز اول اسم واقعی فیلدها رو بیاری.

oxygenws
چهارشنبه 26 بهمن 1384, 10:25 صبح
عجب بانکی طراحی کردی، همه از نوع text!!!!

mozhgan
چهارشنبه 26 بهمن 1384, 12:50 عصر
سلام
ممنون که جوابمو می دین
مگه نباید توی پرانتز اول اسم متغیرهایی که توی php در فرم گذاشتیم رو بذاریم اسم متغیرهای فرم من همون پرانتز اولی هستش
کاری که شما گفتین رو انجام دادم ولی بازم همون error رومیده
دو تا سوال دیگه هم دارم
البته اولش یه عذر خواهی می کنم چون اینجا سایتتون باز نمی شه چند بار باید dc بشم تا بازش کنه واسه همین همه سوالام رو یه جا می پرسم اینو گفتم که آقای مدیر بهم اخطار نده
1-نوع radiobottone تو بانک چی باشه بهتر؟
2- بانکا توی phpmyadmin کجا ذخیره می شه ، چطور میشه بردشون یه جای دیگه ؟
بازم ممنون

reza_rad
چهارشنبه 26 بهمن 1384, 13:01 عصر
اون متغیر ها رو باید توی پرانتز دوم یعنی همون جایی که value ها رو وارد می کنید بذارین.
چه error ای میده؟؟!!!
من با script ما همون table رو درست کردم و query رو اجرا کردم و جواب میده بدون error .

جای بانک ها اینجاست:
دایرکتوری روت mysql شاخه ی data . میشه منتقل شون کرد.باید یک فایل databasename.sym همونجا بسازید و آدرس جایی رو بدید که می خواهید دیتابیس تون اونجا باشه.

oxygenws
چهارشنبه 26 بهمن 1384, 13:23 عصر
1- enum
2- در شاخه mysql/data.... بسته به نوع جداول (myisam یا innodb یا ...) می تونه مکانش فرق کنه.

mozhgan
چهارشنبه 26 بهمن 1384, 13:56 عصر
سلام آقای رضا
ممنون
ببخشید که بازم همون سوالو می پرسم
متغیرهای صفحه Php رو اینطوری باید بذارم و اجرای query هم به این شکله


$query="INSERT INTO plak(Pid,Number, Install, NotInstall, Build, NotBuild, Report, NotReport )
values('','$TPlak,'$RInstall','$RNInstall','$RBuil d','$RNBuild','$RReport','$RNReport')";
die($query);
$RESULT=mysql_query($query) or die(mysql_error());

و اینکه error اینه:
INSERT INTO plak(Pid,Number, Install, NotInstall, Build, NotBuild, Report, NotReport ) values('','12,'','','','','','')
شماره رو که وارد می کنم با پیغام نشون میده
و یه سوال دیگه :
مسیر بانک توی phpmyadmin میشه واضح تر بگین متوجه نشدم.
خیلی ممنون

reza_rad
چهارشنبه 26 بهمن 1384, 14:06 عصر
1- Pid رو از توی query بردارید. این فیلد auto_increment هست و خودش مقدار می گیره نیازی نیست که شما بهش مقدار بدین. اگه دقت کنید من توی query که براتون گذاشتم اینجا Pid رو نیاوردم.

2- اگه سیستم عاملتون ویندوزه برید توی همون آدرسی که mysql رو نصب کردید. مثلا یه همچین چیزی:
c:\mysql\data

mozhgan
چهارشنبه 26 بهمن 1384, 14:16 عصر
سلام
ممنون
رفتم pi رو هم بر داشتم ولی بازم error میده فرقی نمی کنه چه باشه چه نباشه ؟ تو صفحه میریزه تو جدول نمی ریزه
2- c:\mysql\data ، تو تمام شاخه هاش رفتم ولی بانکمو پیدا نکردم
تو تمام دایرکتوریهای phpmyadmin هم رفتم ولی پیداش نمی کنم توی browse ش هست ولی پیدا نمی شه
خیلی ممنون آقای رضا

reza_rad
چهارشنبه 26 بهمن 1384, 14:25 عصر
این یعنی چی:

تو صفحه میریزه تو جدول نمی ریزه

توی چه صفحه ای میریزه؟ متن error چیه؟

2- دایرکتوری mysql نه phpmyadmin !


تو تمام دایرکتوریهای phpmyadmin هم رفتم ولی پیداش نمی کنم توی browse ش هست ولی پیدا نمی شه

بگدید ببینید mysql رو کجا نصب کردید.

mozhgan
چهارشنبه 26 بهمن 1384, 14:26 عصر
سلام
بانکام و پیدا کردم
میشه واضح تر بگین که چه طور به یه جایی ک mysql نصب نیست ببرم اونوقت مشکل پیش نمی یاد
ممنون

mozhgan
چهارشنبه 26 بهمن 1384, 14:30 عصر
سلام
errror که میده یعنی اینکه همونجا تو ی error ش میریزه
ولی من توی mysql پیداش کردم
ممنون

reza_rad
چهارشنبه 26 بهمن 1384, 14:36 عصر
اول یه کپی از روی همه اش بگیرید که مشکلی پیش نیاد.

البته من این روش رو بلدم شاید روشهای بهتری هم باشه(اگکه کسی روش دیگه ای بلده لطف کنه و بگه.ممنون)
یک فایل به این نام بسازید :
databasename.sym
جای databasename اسم دیتابیس تون باشه.
با notepad فایل رو باز کنید. و آدرس جدید رو بنویسید اونجا. مثلا اینجوری:
d:\...\mydatabase
و کل دایرکتوری دیتا بیس رو به اونجا منتقل کنید.
البته این نیاز به این داره که شما قبلش سرویس mysql رو stop کرده باشید و گرنه همه ی فایلها رو جابجا نمی کنه.

البته باز هم می گم که اگه کسی راه بهتری بلده بگه ممنون میشم.

mozhgan
چهارشنبه 26 بهمن 1384, 14:59 عصر
سلام آقای رضا
ممنون
بازم error قبلی برای درج
INSERT INTO Plak(Number, Install, NotInstall, Build, NotBuild, Report, NotReport ) values('','1234567893,'','','','','','')
این عدد رو من خودم وارد کردم توی فرم
چرا این error رو میده برنامه که درسته !

reza_rad
چهارشنبه 26 بهمن 1384, 15:09 عصر
اینو استفاده کنید:



INSERT INTO Plak(Number, Install, NotInstall, Build, NotBuild, Report, NotReport ) values(1234567893,'','','','','','')


وقتی Pid رو از پرانتز اول حذف کردید معاولش رو هم توی value باید حذف می کردید. و کوتیشن قبل از عددتون هم اضافی بود.

امیدوارم الان دیگه اجرا بشه.

mozhgan
چهارشنبه 26 بهمن 1384, 15:19 عصر
سلام آقای رضا
اون کد بالایی که شما فرستادین همون متن error هستش من این کارم انجام داده بودم ،تغییر خیلی دادم رو کد ، ولی مثل کدی که شما فرستادین رو error میده .
اگه من '' توشون نام متغیر هارو ننویسم که این کار رو کردم ولی error داد چه طور می فهمه چی بریزه
تغییر که میدم متوجه نمی شه بازم همون error رو میده

mozhgan
چهارشنبه 26 بهمن 1384, 15:20 عصر
یادم رفت تشکر کنم آقای رضا
ممنون که جوابمو زود به زود میدین

reza_rad
چهارشنبه 26 بهمن 1384, 15:37 عصر
سلام آقای رضا
اون کد بالایی که شما فرستادین همون متن error هستش من این کارم انجام داده بودم ،تغییر خیلی دادم رو کد ، ولی مثل کدی که شما فرستادین رو error میده .
اگه من '' توشون نام متغیر هارو ننویسم که این کار رو کردم ولی error داد چه طور می فهمه چی بریزه
تغییر که میدم متوجه نمی شه بازم همون error رو میده

یعنی شما هر تغییری بدین باز همون error رو میده؟!!!
ولی من همه ی اینا رو تست کردم اینجا درسته!

2-توی '' نام متغیرها رو بنویسید من که نگفتم ننویسید! من گفته بودم واسه ی پرانتز اولی.توی دومی باید حتما باشه.

3- متن کامل error v, بگذارید اینجا. و query رو هر دو باهم. شما یا query رو می گذارید یا error رو!

4- خواهش می کنم.

mozhgan
چهارشنبه 26 بهمن 1384, 15:48 عصر
سلام
1- ممنون
2- تموم برنامه اینه


error_reporting(E_ERROR);
$db="shahrdary";
$link =mysql_connect("localhost","root","");
if (!$link)
die("couldn t connct to mysql server");
mysql_select_db($db,$link)
or die("coulden t open $db :".mysql_error());
$Query="INSERT INTO plak(Number, Install, NotInstall, Build, NotBuild, Report, NotReport )
values('$TPlak','$RInstall','$RNInstall','$RBuild' ,'$RNBuild','$RReport','$RNReport')";
die($Query);
$RESULT=mysql_query($Query) or die(mysql_error());
echo"<p align='center'><b><span style='background-color: #FF0000'>اطلاعات ارسالی شما
به بانک اطلاعاتی اضافه شد</span></b></p>
";

3-و error هم اینه :


INSERT INTO plak(Number, Install, NotInstall, Build, NotBuild, Report, NotReport ) values('1234567893','','','','','','')

reza_rad
چهارشنبه 26 بهمن 1384, 16:03 عصر
من کد رو اجرا کردم error نمیده و اجرا میشه!!!
اون متن error ای هم که شما فرستادید کامل نیست.معمولا error های phpmyadmin این شکلی اند:

MySQL said:

#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 ''','','')' at line 1

کامل بذاریدش اینجا اگه میشه.

یک نکته ی دیگه هم هست شما اصلا یه select معمولی اجرا کنید ببینید جواب میده.شاید تنظیمات جای دیگه ای ایراد داره.

و در نهایت این قسمت:
mysql_connect("localhost","root","");
مگه شما واسه ی روت پسورد نگذاشتید؟! خوب اینجا که دارید بدون پسورد کانکت میشید!!

mozhgan
چهارشنبه 26 بهمن 1384, 16:30 عصر
سلام
ممنون
من متن error رو کامل نوشتم فقط همینه که واستون فرستادم
یه select معمولی اجرا کردم جواب داد
این کد select


$result=mysql_query("SELECT * FROM plak");
$num_row=mysql_num_rows($result);
print "table there is $num_row in plak <p>";

جوابش این شد
table there is 0 in plak
ولی بعدش دوباره این ERROR رو داد


INSERT INTO plak(Number, Install, NotInstall, Build, NotBuild, Report, NotReport ) values('1234567893','','','','','','')

من PASSWORD رو برداشتم چون password رو حذفش کردم
آقای رضا من mysql م تو درایو c هستش و phpmyadmin م توی درایو f ، میگم احیاناً بخاطر این موضوع نیست ؟
بازم ممنون

reza_rad
چهارشنبه 26 بهمن 1384, 16:35 عصر
آقای رضا من mysql م تو درایو c هستش و phpmyadmin م توی درایو f ، میگم احیاناً بخاطر این موضوع نیست ؟


نه این مساله ای نیست.ربطی نداره.

کجای phpmyadmin میرید query رو چک می کنید؟

mozhgan
چهارشنبه 26 بهمن 1384, 16:51 عصر
سلام
ممنون
مگه جز توی برنامه توی phpmyadmin هم باید query چک کنم
دستور query رو توی برنامه که فرستادم نوشتم کار دیگه ای هم باید بکنم؟!!!!

mozhgan
چهارشنبه 26 بهمن 1384, 16:54 عصر
سلام
ممنون
مگه جز توی برنامه توی phpmyadmin هم باید query چک کنم
دستور query رو توی برنامه که فرستادم نوشتم کار دیگه ای هم باید بکنم؟!!!!

mozhgan
پنج شنبه 27 بهمن 1384, 10:13 صبح
سلام
ممنون
توی phpmyadmin تو قسمت مشاهده نگاه می کنم که چون رکوردی نمی ریزه غیر فعال هستش
و اینکه من یه جدول یک رکوردی هم درست کردم بازم همون error رو میده ؟ چرا؟؟؟؟؟؟؟

reza_rad
پنج شنبه 27 بهمن 1384, 10:23 صبح
ببینید اصلا می تونید select رو اجرا کنید؟
برید توی قسمت sql جدولتون توی phpmyadmin و select * from test_table رو اجرا کنید ببینید اصلا کار می کنه؟!!!!!!!!!

mozhgan
پنج شنبه 27 بهمن 1384, 11:06 صبح
سلام
ممنون که جواب میدین
آره رفتم توی phpmyamin اجراکردم پیغام داد که query با موفقیت انجام شده ولی رکوردی نبود که نشونش بده
چرا error میده ؟!

reza_rad
پنج شنبه 27 بهمن 1384, 11:09 صبح
آره رفتم توی phpmyamin اجراکردم پیغام داد که query با موفقیت انجام شده ولی رکوردی نبود که نشونش بده

خوب این یعنی درست اجرا شده.

در مورد مشکلتون هم فقط و فقط باید بدلیل syntax کوئری باشه و نه چیز دیگه. چک کنید باز.

mozhgan
پنج شنبه 27 بهمن 1384, 11:37 صبح
سلام
ممنون
متغیرهای فرمم اینان:


TPlak، RInstall, RNInstall, RBuild, RNBuild, RReport, RNReport

و متغیرها ی تو بانکم هم اینا هستند


Number, Install, NotInstall, Build, NotBuild, Report, NotReport

و برنامه هم اینه :


$Query="INSERT INTO plak(Number, Install, NotInstall, Build, NotBuild, Report, NotReport )
values('$TPlak','$RInstall','$RNInstall','$RBuild' ,'$RNBuild','$RReport','$RNReport')";
die($Query);
$RESULT=mysql_query($Query) or die(mysql_error());

و ERROR اینه :


INSERT INTO plak(Number, Install, NotInstall, Build, NotBuild, Report, NotReport ) values('1234567893','','','','','','')

من MYSQL م رو توی یه درایو دیگه هم نصب کردم و تو تون مسیر یه بانک دیگه ساختم ولی همین ERROR رو داد.
چی کارش کنم ؟؟؟!

mozhgan
پنج شنبه 27 بهمن 1384, 12:07 عصر
سلام کاربر night 11 شما نمی دونید که این error بخاطر چیه؟

reza_rad
پنج شنبه 27 بهمن 1384, 12:07 عصر
من چک کردم error نمی ده. قاعدتا هم کد شما نباید مشکلی داشته باشه. دیگه نمی دونم چی بگم!

mozhgan
پنج شنبه 27 بهمن 1384, 12:10 عصر
سلام
ممنون آقای رضا اگه چیز دیگه ای به ذهنتون رسید لطف کنید بگید
بازم ممنون

reza_rad
پنج شنبه 27 بهمن 1384, 12:15 عصر
خواهش می کنم.حتما.

mozhgan
پنج شنبه 27 بهمن 1384, 12:47 عصر
سلام آقای رضا
تو بانکم درج می کنه
رفتم دستی تو بانک ریختم همون دستور phpmyadmin رو برداشتم درست شد ، مشکلش این بود که نام جدول رو باید توی '' می ذاشتم که این کا رو نمی کردم
کدش اینه:


$Query="INSERT INTO `plak` ( `Pid` , `Number` , `Install` , `NotInstall` , `Build` , `NotBuild` , `Report` , `NotReport` )
VALUES ('','$TPlak','$RInstall','$RNInstall','$RBuild','$ RNBuild','$RReport','$RNReport')";
$RESULT=mysql_query($Query) or die(mysql_error());

خیلی ممنون آقای رضا که این همه جوابمو دادین

reza_rad
پنج شنبه 27 بهمن 1384, 12:57 عصر
خوب خوشحالم که حل شد.
خواهش می کنم.
موفق باشید.

mozhgan
جمعه 28 بهمن 1384, 18:14 عصر
سلام
اگه بخوام محتوای یک متغیر( که در صفحه php هستش ) رو با محتوای فیلدها ی تو جدول مقایسه کنم چه کار باید بکنم؟
و یه سوال دیگه ؟
این error برای چیه ؟


Column count doesn't match value count at row 1

mozhgan
جمعه 28 بهمن 1384, 19:53 عصر
سلام
اگه بخوام محتوای یک متغیر( که در صفحه php هستش ) رو با محتوای فیلدها ی تو جدول مقایسه کنم چه کار باید بکنم؟
و یه سوال دیگه ؟
این error برای چیه ؟


Column count doesn't match value count at row 1

mozhgan
جمعه 28 بهمن 1384, 20:31 عصر
سلام
کسی جوابه سوالای بالام رو بلد نیست؟ممنون میشم اگه جواب بدین

armin390
جمعه 28 بهمن 1384, 22:08 عصر
اگه بخوام محتوای یک متغیر( که در صفحه php هستش ) رو با محتوای فیلدها ی تو جدول مقایسه کنم چه کار باید بکنم؟

باید محتوای متغیر رو با محتوای فیلد مورد نظرتون مقایسه کنید :تشویق:


و یه سوال دیگه ؟
این error برای چیه ؟


Column count doesn't match value count at row 1


این error خاصی نیست و می تونید ازش صرفنظر کنید.:قهقهه:
----------------------------------------------------------------------------------------------
تا اینجا جوابتون رو بر اساس سوالتون دادم؛
ولی اگه مشکلتون در ارتباط با sql که یه کتابی مقاله ای بگیرید و بخونید.کافیه یه سرچ کنید تا کلی ی ی ی مقاله و داستان پیدا کنید.
خوب فکر نکنم کسی بیاد و تمام خطاهایی که باهاش مواجه شده رو حفظ کنه و شما خطا رو بگید و دوستان(اگه با این خطا برخورد کرده باشن) بیان بگن این خطا به خاطر چیه!!
پس اگه می خواین جواب سوالتون رو بگیرید بگین در قبال چه حرکتی این خطا رو گرفتین.

reza_rad
شنبه 29 بهمن 1384, 09:31 صبح
اگه بخوام محتوای یک متغیر( که در صفحه php هستش ) رو با محتوای فیلدها ی تو جدول مقایسه کنم چه کار باید بکنم؟



باید از where clause استفاده کنید.

در مورد error هم بیشتر توضیح بدید.

mozhgan
شنبه 29 بهمن 1384, 09:51 صبح
سلام میشه آقای آرمین لطف کنند یا جواب ندند یا اگه میدند سوالارو به .... نکشن ، ممنون می شم . من همه ی این کارایی که ایشون می گم انجام دادم شایدم خیلی بیشترشو . این دومین بار که اینجوری صحبت میکنند .

mozhgan
شنبه 29 بهمن 1384, 10:55 صبح
$result="SELECT * FROM `plak` WHERE [Number]='trim($T1)'";
$result1=mysql_query($result);
print $result1;

آقای رضا دستور بالا هیچ کاری نمی کنه میشه بگین چرا؟

reza_rad
شنبه 29 بهمن 1384, 11:10 صبح
باید [] رو بردارید. اینجوری :



SELECT * FROM `plak` WHERE Number='trim($T1)'

armin390
شنبه 29 بهمن 1384, 12:20 عصر
سلام میشه آقای آرمین لطف کنند یا جواب ندند یا اگه میدند سوالارو به .... نکشن ، ممنون می شم . من همه ی این کارایی که ایشون می گم انجام دادم شایدم خیلی بیشترشو . این دومین بار که اینجوری صحبت میکنند .
باشه هطمن!!!!!(بهش میگم)
در مقابل سوال ..... انتظار جواب بهتر از این نداشته باش.
بازم سوال .... ببینم مطمئن باش اگه حسش باشه کنتورت بالا می ره!
-----------------------------------------------------------------------------
شما اگر کارای که من گفتم انجام میدادید مطمئن باش این سوالا رو مطرح نمی کردین.
خوب این مقاله فارسی در مورد پرس و جو در SQL فکر کنم تا حدی بهتون کمک کنه.
[Link]

mozhgan
شنبه 29 بهمن 1384, 13:32 عصر
ممنون آقای رضا

mozhgan
شنبه 29 بهمن 1384, 13:37 عصر
سلام آقای آرمین
از آدرسی که فرستادین ممنون
عذر می خوام من یک مبتدی هستم و در مورد این موضوع لطف کنید قوانین سایت رو بخونین

reza_rad
شنبه 29 بهمن 1384, 13:37 عصر
خواهش می کنم.

mozhgan
یک شنبه 30 بهمن 1384, 21:40 عصر
سلام آقای رضا
برای اینکه بخوام به فیلدهام تو جدول دسترسی داشته باشم از این دستور استفاده می کنم .


foreach ($a_row as $field);

ولی اشتباست
$a_row متغیری هستش که مقادیر ستونهای هر سطر توش قرار می گیره
میشه بگین دستورم کجاش اشتباست
ممنون

MMSHFE
یک شنبه 19 دی 1389, 12:18 عصر
با سلام، يك نكته يادتون باشه: توي بعضي از سرورهاي مجازي مثل XAMPP و در بعضي از نسخه هاي MySQL بايد نام فيلدها رو توي گيومه كج يعني كاركتر ` كه كنار عدد 1 قرار داره، بگذاريد. مثلاً اينطوري:


INSERT INTO `shahrdary`.`plak` ( `Pid` , `Number` , `Install` , `NotInstall` , `Build` , `NotBuild` , `Report` , `NotReport` ) VALUES ( '', '', '', '', '', '', '', '' )
تا مشكل برطرف بشه.
ترفند: براي اينكه با روش نوشتن استاندارد INSERT در نسخه هاي مختلف MySQL و سرورهاي مجازي مختلف آشنا بشين، كافيه يكبار در phpMyAdmin يك ركورد در جدول توسط گزينه Insert درج كنيد و به ساختاري كه خودش بعد از درج ركورد در صفحه مينويسه، دقت كنيد.
موفق و مؤيد باشيد.