PDA

View Full Version : ثبت اطلاعات درون دیتابیس



engmmrj
یک شنبه 30 مهر 1391, 17:14 عصر
چرا وقتی من رو گزینه ثبت کلیک میکنم در دیتابیس ثبت نمیشه اگه میشه راهنمایم کنید

<?php
if(!strlen(trim($_GET['id'])))
die("please enter test id");
$query="insert into test values(";
$query=$query.$_GET['id'].",";
$query=$query."'".$_GET['sabt']."',";
$con=@mysql_connect("localhost","root","");
$data=@mysql_select_db("test1",$con);
?>
<form action="" method="get">
<lable>name</lable><input type="text"name="id" size="30" />
<lable>lname</lable><input type="text"name="sabt" size="30" />
<input type="submit" value="ثبت" name="send" />
</form>
</body>
</html>

reza10wert
یک شنبه 30 مهر 1391, 18:06 عصر
کلا کد نویسی مشکل داره
ترتیب را رعایت نکردید , نحوه نوشتن کدها و ...
مثلا شرط اولی کارش چیه؟

engmmrj
یک شنبه 30 مهر 1391, 23:00 عصر
کسی بلد نبود راهنمایی کنه

mohsen6500
یک شنبه 30 مهر 1391, 23:49 عصر
سلام دوست عزیز
به قول دوستمون اولا که جابه جا نوشتی
اول باید به سرور و دیتا بیس وصل بشید و بعد اطلاعات رو بریزید توی جدول
شما اگر قصد رفتن به شهر رو داشته باشید یهو وارد شهر میشید یا از مسیری وارد شهر میشید
خوب اتصال به سرور هم یه همچین چیزی هستش
بعدش برای وارد کردن اطلاعات توی جدول دیگه این همه دنگ و فنگ نمیخواد!
راستی شما این اطلاعات رو توی کدوم فیلد ها میخواهی بذاری؟
مشخص نکردی دادا!
در آخر هم بگم که اولا اطلاعات رو سعی کن با متد POST بفرستی چون بهتره
بعدش حتما قبل از چک کردن مقادیر اول چک کن که متد مورد نظر ارسال شده باشه
پس :

<?php
if(isset($_GET['id'])&&($_GET['sabt']))//اگرمقادیر اول و دوم ارسال شده باشه
{
if(!strlen(trim($_GET['id'])))
die("please enter test id");
$con = mysql_connect("localhost","root","");//اتصال به سرور
$data = mysql_select_db("test1",$con);//اتصال به دیتا بیس
$Query = mysql_query("INSERT INTO `test` (`id`,`sabt`)VALUES('".$_GET['id']."','".$_GET['sabt']."')");//درج اطلاعات در جدول
if($Query==true)//اگر با موفقیت همراه بود
echo 'OK!';//چاپ کن درست است!
else //درغــیر این صورت
echo 'NOT OK!';//چاپ کن درست نیست!
}
?>
موفق باشید

engmmrj
دوشنبه 01 آبان 1391, 01:05 صبح
واقعا خدا خیرت بده خیلی آقایی

engmmrj
دوشنبه 01 آبان 1391, 01:06 صبح
برای جستجو در دیتابیس باید چیکار کنم

mohsen6500
دوشنبه 01 آبان 1391, 12:10 عصر
سلام
خواهش می کنم !
فرک کنم که منظورتون کلمه WHERE باشه!
عرضم به حضورت که بعضی مواقع نیاز هست که ما مقادیر وارد شده رو با مقادیر داخل دیتابیس مون جک کنیم
مثلا مقادیر نام کاربری و رمز عبور کاربران سایت که باید مشخص بشه یه همچین نام کاربری و رمز عبور مربوط به آن توی جدول کاربران هست یا خیر برای این کار باید از کلمه جستجوگر WHERE استفاده کرد
این کلمه دقیقا فیلد یا فیلد های مورد نظر مون رو چک میکنه یعنی اینکه حساس به حروف کوچیک و بزرگ هستش!
مثلا اگر نام کاربری بنده mohsen6500 هست نمیتونم با نام کاربری Mohsen6500 وارد بشم و حتما باید تمامی حروف کوچیک باشه
اما حالت کلی این نوع جستجو اینه :

$WhereSearch = mysql_query("SELECT * FROM `users` WHERE `username` = `$User` and `password` = `$Password`");
در مثال بالا مقادیر نام کاربری و رمز عبور وارد شده توسط کاربر در متغییر ریخته شده و سپس با فیلدهای نام کاربری و رمز عبوری که در جدول کاربران هست چک میشود.
حالا اگر بخواهیم بگیم که متوجه بشیم که آیا این نام کاربری و رمز عبور وجود دارد یا خیر باید تعداد سطرهای موجود رو بشماری
چون نام کاربری و رمز عبور منحصربه فرد باید باشد پس یا یک رکوردیافت میشود ویا هیچ رکوردی یافت نخواهد شد.
پس با استفاده از دستور mysql_num_rows تعداد سطرهای موجود را شمارش می کنیم.

$WhereNums = mysql_num_rows($WhereSearch);
if($WhereNums>0)//اگر تعداد سطرها بیش از صفر بود
echo 'Username and Password is OK!';//درست است!
else
echo 'This Record is not found!';//چنین رکوردی یافت نشد!
البته یک راه دیگه هم هست که به این صورته:

$WhereNums =mysql_fetch_array(mysql_query("SELECT COUNT(*) AS num FROM `users` WHERE `username` = '1' and `password` = `$Password`"));
if ($WhereNums['num']==1)//اگر یک سطر بود
echo 'Username and Password is OK!';//درست است!
else
echo 'This Record is not found!';//چنین رکوردی یافت نشد!
موفق بــاشید

engmmrj
دوشنبه 01 آبان 1391, 16:09 عصر
منظور منو نفهمیدید.
میگم وقتی کسی تو text box وارد می کنه علی و جستجو می کنه اطلاعات مربوط به علی نمایش داده بشه

engmmrj
سه شنبه 02 آبان 1391, 22:24 عصر
وچه جوری میشه این اطلاعات رو ویرایش و حذف کرد؟