PDA

View Full Version : تغییر مقدار یک متغیر با هر بار زدن دکمه



mhabat
شنبه 06 مهر 1392, 22:20 عصر
سلام.
این کد رو ببینید:


<form action="" method="post">
<input type="submit" name="dokme">
</form>
<?php
$dokme=$_POST['dokme'];

function click(){
static $x=0;
$x+=10;
echo $x."</br>";

}

if(isset($dokme)) {
click();

}

?>

می خوام هر بار که دکمه زده میشه مقدار x تغیر کنه.
ولی هر بار که دکمه رو میزنم همون عدد 10 رو نشون میده.
مثلا بار اول که دکمه رو میزنم عدد 10 رو نشون بده و بار بعدی 20 و بعد 30 و.....
میشه کاری کرد؟

pary_daryayi
یک شنبه 07 مهر 1392, 12:51 عصر
شما شرط گذاشتید که اگه دکمه کلیک شد تابع اجرا بشه , دفعه ی دوم که دکمه رو کلیک میکنید باز از ابتدا اجرا میشه .
اگه شرط رو نزارید و به این صورت بنویسید , متغیر چون استاتیک هست , نتیجه همونی میشه که گفتید :


<form action="" method="post">
<input type="submit" name="dokme">
</form>
<?php
function click(){
static $x=0;
$x+=10;
echo $x."</br>";

}
click();
click();
click();

mhabat
یک شنبه 07 مهر 1392, 17:51 عصر
سلام.
مرسی
ولی خوب الان که دکمه رو میزنم هیچ تغییری رخ نمیده که!

arashactive
یک شنبه 07 مهر 1392, 18:14 عصر
<?php
$number = $_POST['txtNum'];
$number+=10;
echo $number;
?>
<form action="" method="POST">
<input type="hidden" name="txtNum" value="<?=isset($number)?$number:10?>" /><br/>
<input type="submit" value="plus" />
</form>

mhabat
یک شنبه 07 مهر 1392, 21:10 عصر
تشکر. من تست کردم ولی دکمه هیچ کاری نکرد!
شما خودت تست کردی؟

shahriyar3
یک شنبه 07 مهر 1392, 21:21 عصر
ایجکس بلدی؟

mhabat
یک شنبه 07 مهر 1392, 21:27 عصر
سلام.
نه !

shahriyar3
یک شنبه 07 مهر 1392, 21:39 عصر
میدونستم :لبخندساده:
صفحه ای که دکمه توش هست


<script type="text/javascript">
$(".buttom").click(function(){
var element = $(this);
$.ajax({
type : "POST",
data:{link : link },
url : "ajax.php",
success : function(data){
$(".message").html(data);
}

});
});

</script>

<form action="" method="post">
<input type="submit" name="dokme" value = "1" class="buttom">
</form>

<div class="message"></div>


صفحه ajax.php


function click($link){
static $x=0;
$x+=10;
echo $x."</br>";

}

if(isset($_POST['link'])) {
click($link);
}

امیدوارم دیگه فانکشن تعریف کردن تو php رو بلد باشی چون تو پست اولت که اشتباه نوشتی :چشمک:

mhabat
یک شنبه 07 مهر 1392, 22:03 عصر
آقا کد اولی رو داخل یه فایل html قرار دادم.
فایل دوم رو هم در ajax.php ولی وقتی دکمه رو زدم برنامه کار نکرد

shahriyar3
یک شنبه 07 مهر 1392, 22:10 عصر
آقا کد اولی رو داخل یه فایل html قرار دادم.
فایل دوم رو هم در ajax.php ولی وقتی دکمه رو زدم برنامه کار نکرد
یعنی چی کار نکرد؟
خوب فانکشنت اشتباهه
فکر کردم دیگه خودت اونو بلدی درست کنی
صبر کن پس اونو بنویسم میزارم الان

shahriyar3
یک شنبه 07 مهر 1392, 22:14 عصر
<script type="text/javascript">
$(".buttom").click(function(){
var element = $(this).val();
$.ajax({
type : "POST",
data:{link : element },
url : "ajax.php",
success : function(data){
$(".message").html(data);
$(".buttom").val(data);
}

});
});
</script>




function click($link){
return $link = $link + 10;
}

if(isset($_POST['link'])) {
click($link);
}

mhabat
یک شنبه 07 مهر 1392, 22:40 عصر
جون من تست کرده قرار میدی؟.
فایل 1.html:


<script type="text/javascript">
$(".buttom").click(function(){
var element = $(this).val();
$.ajax({
type : "POST",
data:{link : element },
url : "ajax.php",
success : function(data){
$(".message").html(data);
$(".buttom").val(data);
}

});
});
</script>
<form action="" method="post">
<input type="submit" name="dokme" value = "ok" class="buttom">
</form>

<div class="message"></div>

ajax.php:

<?php
function click($link){
return $link = $link + 10;
}

if(isset($_POST['link'])) {
click($link);
}
?>


حالا اون فایل ایجکس ,مقدار تابع داخلش رو echo نکردین که تغییرش دادم. و همچنین متغیر $link هم که به عنوان پارامتر ارسال می شد مقدار نداشت. اون رو هم تغییر دادم.
به این شکل و بازم کار نمی کنه!

<?php
function click($link){
return $link = $link + 10;
}
$link=$_POST['link'];
if(isset($link)) {
echo click($link);
}
?>

engmmrj
یک شنبه 07 مهر 1392, 22:57 عصر
فایل jquery رو لینک کردید ؟

mhabat
یک شنبه 07 مهر 1392, 23:08 عصر
سلام. نه نکردم

shahriyar3
یک شنبه 07 مهر 1392, 23:10 عصر
احتیاجی به echo نداشت :|
.........

mhabat
یک شنبه 07 مهر 1392, 23:15 عصر
اضافه کردم:

<!DOCTYPE html>
<html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js">
</script>

آقا شهریار با عرض پوزش رویه این سیستم توانایی نصب فایر فاکس رو ندارم تا این افزونه رو نصب کنم.

shahriyar3
یک شنبه 07 مهر 1392, 23:22 عصر
این دیگه چیه!!!! :متعجب:


<!DOCTYPE html>
<html>
<head>
<script src="<a href="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js" target="_blank">http://ajax.googleapis.com/ajax/libs.../jquery.min.js</a>">
</script>


اینو بزار


<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>

shahriyar3
یک شنبه 07 مهر 1392, 23:24 عصر
گوگل کروم هم داره میتونی با اون تست کنی

mhabat
یک شنبه 07 مهر 1392, 23:38 عصر
با opera نمیشه؟ فقط ie , opera موجود هست.

اینو ببین:


<script type="text/javascript" src="<a href="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js" target="_blank">http://ajax.googleapis.com/ajax/libs.../jquery.min.js</a>"></script>

<script type="text/javascript">
$(".buttom").click(function(){
var element = $(this).val();
$.ajax({
type : "POST",
data:{link : element },
url : "ajax.php",
success : function(data){
$(".message").html(data);
$(".buttom").val(data);
}

});
});
</script>
<form action="" method="post">
<input type="submit" name="dokme" value = "ok" class="buttom">
</form>

<div class="message"></div>

دیگه مکشلی نداره؟. ...!

این چی؟

function click($link){
return $link = $link + 10;
}

if(isset($_POST['link'])) {
click($link);
}


مشکلی نداره؟
اینجاشو بین:

click($link); متغیر لینک مقدار نمی خواد؟ داره؟

engmmrj
دوشنبه 08 مهر 1392, 00:37 صبح
<script type="text/javascript" src="<a href="<a href="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js" target="_blank">http://ajax.googleapis.com/ajax/libs.../jquery.min.js</a>" target="_blank">http://ajax.googleapis.com/ajax/libs.../jquery.min.js</a>"></script>

تگ a انیجا نقشش چیه ؟ :متعجب:
صحیحش اینه :

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js" ></script>