PDA

View Full Version : کمک برای کد php



baidin
چهارشنبه 20 دی 1391, 10:21 صبح
با سلام
من یه برنامه نویس مبتدی پی اچ پی هستم
زمانی که توی یک فرم کنترل باتن ایجاد میکنیم میخوام به ازای کلیک روی اون باتن کدی توی همون فرم اجرا بشه ممنون میشم کمکم کنید.
مثلا اطلاعاتی از کاربر توی فرم گرفته میشه و حالا میخوام بعد از زدن گزینه ثبت همونجا در بانک اطلاعاتی insert کنم

engmmrj
چهارشنبه 20 دی 1391, 10:45 صبح
فکر نکنم دیگه این کد نیاز به توضیح داشته باشم
اگه نفهمیدید مطرح کنید تا کمکتون کنیم
موفق باشد

<?PHP
$con=mysql_connect('localhost','root','');
mysql_select_db('db');
if(isset($_POST['submit'])){
$insert=mysql_query('INSERT INTO table(name)VALUSE("'.$_POST['name'].'")');
if($insert=true){
echo'اطلاعات شما با موفیقت ثبت شد';
}
}
?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
</head>

<body>
<form action="" method="post">
<input type="text" name="name" />
<input type="submit" name="submit" value='insert'/>
</form>
</body>
</html>

siavashsay
چهارشنبه 20 دی 1391, 11:00 صبح
دوست عزیز !
اگر منظورتون از :
بعد از زدن گزینه ثبت همونجا در بانک اطلاعاتی insert کنم این هست که بدون Refresh شدن اینکار انجام شه باید از jQuery استفاده کنید !
در غیر اینصورت کدی که دوستمون آقای mehdints دادن رو اجرا کنید :)
موفق باشید !

baidin
چهارشنبه 20 دی 1391, 13:41 عصر
از راهی که دوستمون mehdints فرمودند استفاده کردم.
منتهی با یک مساله دیگه روبرو شدم. من دیگه دسترسی به کنترل اچ تی ام ال ندارم.
قبلا همون جایی که کنترل ایجاد میکردم با پی اچ پی مقداری را در کنترل قرار میدادم. منتهی الان پس از اینکه کنترل ایجام میکنم مقداری وجود نداره و پس از اینکه باتن ثبت زده بشه همونجا ثبت میکنم و مقداری را میخوام در کنترلی که قبلا ایجاد کرده ام قرار بدم ولی دسترسی ندارم(با استفاده از نام کنترل مقداری در اون قرار نمیگیره).
از siavashsay هم تشکر میکنم و آیا با استفاده از jquery این مشکل دیگه بوجود نمیاد؟

siavashsay
چهارشنبه 20 دی 1391, 17:49 عصر
والله دقیقا متوجه منظورتون نشدم !
به هر حال استفاده از jQuery این نیست که کدهای شما تغییری پیدا کنن ! کدهای insert کردن شما به همون صورت قبل هست اما تنها بحثی که هست صفحه شما دیگه رفرش نمیشه !
مثلا با زدن دکمه ثبت شما یک مقدار رو به صفحه insert یا همون mysql میفرستید - عملیات اونجا انجام میشه و در صورت اوکی بودن مقداری رو فراخوانی میکنید!
باز هم اگر یک نمونه کد بدید میشه بیشتر کمکتون کرد !

baidin
جمعه 22 دی 1391, 09:28 صبح
والله دقیقا متوجه منظورتون نشدم !
به هر حال استفاده از jQuery این نیست که کدهای شما تغییری پیدا کنن ! کدهای insert کردن شما به همون صورت قبل هست اما تنها بحثی که هست صفحه شما دیگه رفرش نمیشه !
مثلا با زدن دکمه ثبت شما یک مقدار رو به صفحه insert یا همون mysql میفرستید - عملیات اونجا انجام میشه و در صورت اوکی بودن مقداری رو فراخوانی میکنید!
باز هم اگر یک نمونه کد بدید میشه بیشتر کمکتون کرد !

تشکر
دوست عزیز من در حالت معمول زمان ایجاد کنترل مقداری که میخواهم در آن قرار بدهم را دارم و مقدار دهی میکنم:

<input type="text" name="username" id="username" value="<?php ........ ?>" />

حالا حالتی را تصور کنید که زمان ایجاد کنترل مقدار مورد نظری که میخواهم در کنترل قرار دهم را ندارم و کنترل را بدون مقدار دهی ایجاد میکنم:

<input type="text" name="username" id="username" />
.
.
.
.
در این قسمت مقداری که لازم هست در کنترل قرار دهم را بدست آورده ام. چطوری به کنترل username در پی اچ پی دسترسی پیدا کنم و مقداری را در اون کنترل قرار دهم؟

siavashsay
جمعه 22 دی 1391, 13:20 عصر
بنده همیشه به دوستان میگم بهصورت واضح سوالاتتون رو بپرسید تا سریع تر جواب بگیرید !
شما میتونستید بگید که چطور میتونم با کلیک کردن به روی یک باتن مقدار داخل یک المنت فرم رو عوض کنم !؟! همین !
در هر صورت - این کد رو اجرا کنید - یک مثال ساده هست ! ببینید اون چیزی هست که میخواید که اگر بود کاملترش کنیم !


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js" type="text/javascript"></script>
<script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.4/jquery-ui.min.js" type="text/javascript"></script>
<script>
$(document).ready(function(e) {
$("#doAdd").click(function(e) {
$("#username").val("somthings");
});
});
</script>
</head>

<body>
<form id="form1" name="form1" method="post" action="">
<p>
<label for="username"></label>
<input type="text" name="username" id="username" value="" />
</p>
<p>
<input name="doAdd" type="button" id="doAdd" value="New Val" />
</p>
</form>
</body>
</html>

در این کد نوع باتن رو NONE قرار دادیم نه submit ! چون در اون صورت صفحه رفرش میشه !
بعد از کلیک بروی باتن New Val مقدار somthings به تکست فیلدی که با ID = Username مقدار دهی شده اضافه میشه !
اگر سوالتون باز چیز دیگه ای هست بفرمائید !