PDA

View Full Version : جستجو در تعدادی عدد



mary3541
چهارشنبه 05 مرداد 1390, 09:08 صبح
چند تا عدد تو پروژه دارم می خوام بین این اعداد برنامه جستجو کنه و اگه عدد مورد نظر تو پروژه موجود بود بهم یه پیغام بده می شه کمک کنید؟

MMSHFE
چهارشنبه 05 مرداد 1390, 09:17 صبح
ميشه بيشتر توضيح بدين؟ عددها رو چطور ذخيره كردين؟ توي آرايه هستن؟ توي ديتابيس ذخيره شدن؟ لطفاً بيشتر توضيح بدين تا بتونيم راهنمايي كنيم.

mary3541
چهارشنبه 05 مرداد 1390, 09:28 صبح
تو آرایه ذخیره شده

mary3541
چهارشنبه 05 مرداد 1390, 12:43 عصر
اگه میشه کمک کنید خیلی بهش نیاز دارم

MMSHFE
چهارشنبه 05 مرداد 1390, 12:59 عصر
اين كد رو ببينيد:


$numbers = array(5, 7, 12, 0, 20);
echo (in_array(10, $numbers) ? 'Yes' : 'No').'<br/>'."\n";
echo (in_array(12, $numbers) ? 'Yes' : 'No').'<br/>'."\n";

دستور echo اول عبارت No و دومي، عبارت Yes رو نمايش ميده.
موفق باشيد.

mary3541
یک شنبه 09 مرداد 1390, 13:41 عصر
بیشتر منظورم اینجوری بود که
یه تعدادی عدد تو آرایه دارم میخوام کاربر تو برنامم اگه شماره خاصی رو جستجو کرد و اون شماره تو اعداد ذخیره شده در آرایه بود yes را برگرداند میشه کمک کنید؟
خیلی گیرم

Arthas1990
یک شنبه 09 مرداد 1390, 16:34 عصر
طبق گفته ی دوست گلم mmshfe با تابع in_array خیلی راحی میشه این کار رو انجام داد.
میتونی یک تابع خودت بنویسی که آرگومان های ورودیش شامل آرایت و عددت هس و جواب رو ریترن کنی و ریترن رو چاپ کنی.
کد زیر رو به عنوان مثال واست نوشتم :



<?php
function chk_num($arr,$find){
if(in_array($find,$arr))
return 1;
else
return 0;

}

?>
<!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>
<?php

$array = array(1, 2, 3, 4, 5);

if(isset($_POST['txtUser'])){
if(chk_num($array,$_POST['txtUser'])==1)
echo 'yes';
else
echo 'no';
}

?>
<form action="" method="post" name="form1" target="_self" id="form1">
<label for="txtUser"></label>
<input type="text" name="txtUser" id="txtUser" />
<input type="submit" name="button" id="button" value="Submit" />
</form>
</body>
</html>

mary3541
سه شنبه 11 مرداد 1390, 09:58 صبح
عذر می خوام واسه نشون دادن جواب yes یا no توی صفحه باید چه کدی اضافه کنم؟ چون کد بالا yes یا no رو تو صفحه نشون نمی ده

mary3541
سه شنبه 11 مرداد 1390, 11:33 صبح
میشه بگید مشکل این کد چیه؟

<html>


<body>


<form>


input your number:


<input Type="text" name="t1" id="" maxlength="7" size="7"/>


</br>


</br>


<input Type="submit" name="b1" value="enter"/>


<?


$t1=$_REQUEST['t1'];


$x=Array(2345634,1234567,4532567,9876076,4567843)


for($i=0;$i<Count($x);$i++)


{


if($x[$i]==$t1)


print("yes");


else


print("no");


?>


</form>


</body>


</html>

MMSHFE
سه شنبه 11 مرداد 1390, 15:37 عصر
دوست گرامي، از تگهاي كوتاه شده استفاده نكنيد. ?> رو با php?> جايگزين كنيد. كلاً كدتون رو با كد زير مقايسه كنيد تا موارد اشكال رو متوجه بشين:


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html>
<head>
<title>Array Check</title>
<meta http-equiv="content-type" content="text/html; charset=utf-8"/>
</head>
<body>
<form action="" method="post">
Input your number:
<input type="text" name="t1" id="" maxlength="7" size="7"/></br>
<input type="submit" value="enter"/>
</form>
<?php
if(isset($_POST['t1'] && !empty($_POST['t1'])) {
$t1 = (int) $_POST['t1'];
$x = array(2345634, 1234567, 4532567, 9876076, 4567843);
echo (in_array($t1, $x) ? 'Yes' : 'No').'<br/>'."\n";
}
?>
</body>
</html>

پيشنهاد: بهتره عادت كنيد استاندارد بنويسيد.

mary3541
چهارشنبه 12 مرداد 1390, 10:43 صبح
من الان این کد رو با فرمت html ذخیره کردم و روی هاستم قرار دادم ولی جواب رو به من نشون نمی ده می شه کمکم کنید مشکلش چیه؟

رضا قربانی
چهارشنبه 12 مرداد 1390, 12:30 عصر
من الان این کد رو با فرمت html ذخیره کردم و روی هاستم قرار دادم ولی جواب رو به من نشون نمی ده می شه کمکم کنید مشکلش چیه؟ عزیز جان شما از دستورات php استفاده کردید و انتها با فرمت html ذخیره می کنید :لبخند: چون از کدهای php استفاده کردید پس باید در زمان ذخیره سازی با پسوند .php ذخیره کنید.

چند تا مثال در این باره می زنم . می تونید با کمی همت به جوابتون برسید .



$digit = 123;


if(is_numeric($digit)){

echo 'True';

}else{

echo 'False';

}

//output: True

این تابع هم برای جستجو در ارایه استفاده میشه :

in_array()
که دو آرگومان دریافت می کنه که اولی مقدار مورد جستجو و دومی نام ارایه مورد نظر می باشد