PDA

View Full Version : مشکل در برنامه



dorna_love
شنبه 09 اردیبهشت 1385, 01:27 صبح
اگه می شه بگین که برنامه زیر کجاش مشکل داره ؟


<html>
<head>
<title>number</title>
</head>
<body>
<?php
$n=1;
$d=$a+$b/2;
$d=abs($d);
$e=$a*$d;
for ($d<$c) {
print("$d,$n");
if($e>0) {
$a=$d;
$n=$n+1;
} else {
$b=$d;
$n=$n+1;
}
?>
</body>
</html>

tabib_m
شنبه 09 اردیبهشت 1385, 03:58 صبح
سلام
به جای عبارت for باید از عبارت while استفاده کنی.

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


.....

dorna_love
شنبه 09 اردیبهشت 1385, 10:03 صبح
منم اولش به جای for از while استفاده کرده بودم ولی کار نمی کنه اگه می شه مشکلش رو حل کنید خیلی واجبه

tabib_m
شنبه 09 اردیبهشت 1385, 14:26 عصر
چه چیزی کار نمیکنه؟
میخواید به چه نتیجه ای برسید؟
اروری که برنامه میده چیه؟

spsgorgan
شنبه 09 اردیبهشت 1385, 19:08 عصر
این برنامه خود به خود کار میکنه ؟! یا از فرمی بهش اطلاعات میرسه ؟
اگر از فرمی اطلاعات بهش نمیرسه شما دو تا متغییر داری که اصلا مقداردهی نشده .

dorna_love
شنبه 09 اردیبهشت 1385, 22:24 عصر
اطلاعات رو از این فرم می گیره
<html>
<head>
<title>number</title>
</head>
<body>
<form action="2.php" method="post">
a:<input type="name" name="a"><br>
b:<input type="name" name="b"><Br>
c:<input type="name" name="c"><br>
<input type="submit">
</form>

dorna_love
یک شنبه 10 اردیبهشت 1385, 20:52 عصر
می گم کسی نمی خواد جواب منو بده

tabib_m
یک شنبه 10 اردیبهشت 1385, 22:39 عصر
باز هم سلام

چه چیزی کار نمیکنه؟
میخواید به چه نتیجه ای برسید؟
اروری که برنامه میده چیه؟

dorna_love
دوشنبه 11 اردیبهشت 1385, 12:36 عصر
هیچ خروجی نمی ده و صفحه سفیده

tabib_m
دوشنبه 11 اردیبهشت 1385, 13:35 عصر
در کد شما یک اشکال منطقی وجود داره ، که نمیدونم چرا php ارور نمیده.
حلقه ی شما باز شده ، اما بسته نشده.
در ضمن ، یک امتحان کنید و مطمئن شید که متغیرهای فرمتون داره درست ارسال میشه.

roya2002_80
دوشنبه 11 اردیبهشت 1385, 16:54 عصر
شما برای اینکه مقادیر فرم قبلی را بخوانید باید از متد POST استفاده کنید من کد شما را اصلاح کردم :

<html>
<head>
<title>number</title>
</head>
<body>
<?php
$n=1;
$d=$_POST['a']+$_POST['b']/2;
$d=abs($d);
$e=$_POST['a']*$d;
while ($d<$_POST['c']) {
print("$d,$n");
if($e>0) {
$_POST['a']=$d;
$n=$n+1;
} else {
$_POST['b']=$d;
$n=$n+1;
}
}
?>
</body>
</html>

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

dorna_love
سه شنبه 12 اردیبهشت 1385, 11:06 صبح
امتحان کردم متغیر هام درست مقدار دهی می شود.منظورتون از اینکه حلقه بسته نشده است چیه من با حلقه ها مشکل دارم و زیاد خوب بلد نیستم اگه می شه یه ذره هم در مورد اون توضیح دهید

dorna_love
سه شنبه 12 اردیبهشت 1385, 11:13 صبح
این کد جدید رو هم تست کردم ولی بازم کار نمی کنه و در خروجی کد زیر را نشون می ده

0) { $_POST['a']=$d; $n=$n+1; } else { $_POST['b']=$d; $n=$n+1; } } ?>

tabib_m
سه شنبه 12 اردیبهشت 1385, 13:11 عصر
.منظورتون از اینکه حلقه بسته نشده است چیه من با حلقه ها مشکل دارم و زیاد خوب بلد نیستم اگه می شه یه ذره هم در مورد اون توضیح دهی
منظورم اینه که آکولادی که باز شده ، بسته نشده


while(....){
....
}

dorna_love
سه شنبه 12 اردیبهشت 1385, 21:36 عصر
می شه این کد رو یکی برام اصلاح کنه و بذاره چون خیلی کارم واجبه

roya2002_80
سه شنبه 12 اردیبهشت 1385, 21:47 عصر
شما باید نگاه بکنی ببینی که نام متد فرمت رو چی گذاشتی؟ اگر POST هست که کد بالا درسته و اگر از متد GET استفاده کردی باید در کد فوق به جای POST از GET استفاده کنی

موفق باشید

moohssenn
چهارشنبه 13 اردیبهشت 1385, 22:27 عصر
سلام
اگه مشکلتون هنوز حل نشده , نمونه اصلی کدتون را بزارید و یه نوضیحی بدید که چی کار میخواهید بکنید
من کد صفحه قبلتون رو چک کردم . پارامترهاتون مقدار نداره , اصلا while کار نمیکند