PDA

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



sm_pakdel
April 18th, 2011, 14:13
میخواستم بدونم در کد زیر متغیر $stat چه چیزی توش قرار میگیره
و خط 5 رو هم برام تحلیل کنید
مرسی


<?php
$city=array(1=>"babol","tehran","sari","amol","shiraz");
foreach($city AS $index=>$state)
{
echo "<b><br> $index -$state";
}
?>

ali2k
April 18th, 2011, 14:42
مقدار state اسم شهرهایی هست که داخل ارایه نوشته شده خط 5 هم یک دستور چاپ هست که داخل حلقه قرار گرفته و تمام شهرهایی که در ارایه هستند را چاپ میکنه

sm_pakdel
April 18th, 2011, 14:49
<form method="POST" action="ch4-9-1.php">
<?php
$num = $_POST['number'];
for ($counter=0; $counter < $num ; $counter++)
{
$OffSet = $counter+1 ;
echo "<b> <br>pleas enter the name of friend number $OffSet<br>";
echo "<b> <input name = child[] type = text">";
}
؟>
<br>
<br>
<input type="submit" value="submite order">

</form>




مشکل این برنامه رو هم نمی دونم چیه هر چی نگاه میکنم اشتباهی توش نیست ولی از خط 18 ایراد میگیره

Talahost.Com
April 18th, 2011, 14:56
echo '<b> <input name = child[] type = "text">';

sm_pakdel
April 18th, 2011, 14:58
این صفحه هم ارور میده اما اجرا میشه


<?php
$c= $_POST['child'];
echo "<b> your friend's names are:<br>";
foreach($c as $index)
{
echo "<b>".$index."<br>";
}
?>

Rezash
April 18th, 2011, 17:34
بهتره متن خطا رو هم بذاريد تا بهتر مشخص بشه مشكل كجاست
بايد چك كنيد $_POST['child'] ارسال شده و آرايه هست.

sm_pakdel
April 18th, 2011, 17:39
بهتره متن خطا رو هم بذاريد تا بهتر مشخص بشه مشكل كجاست
بايد چك كنيد $_POST['child'] ارسال شده و آرايه هست.

وقتی صفحه رو در دریم ویور میخوام تست کنکک ایراد میگیره ولی وقتی ذخیره کینم و با صفحات دیگه که تکمیل کننده این صفحه هست اجرا میکنم هیچ مشکلی نیست و درست عمل میکنه
اینم متن خطا


your friend's names are:

Warning: Invalid argument supplied for foreach() in C:\wamp\www\learning\ch4-9-1.php on line 12

Rezash
April 18th, 2011, 18:00
ورودي بايد به صورت آرايه باشه.فرم html اتون رو بذاريد تا ببينم.

sm_pakdel
April 18th, 2011, 18:40
<!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=iso-8859-1" />
<title>Untitled Document</title>
</head>

<body>
<form action="ch4-9.php" method="POST">
how many friend do you have?
<input type="text" name="number" size="5">
<br>
<br>
<input type="submit" value="submite order">
<br>
</form>
</body>
</html>




این صفحه اول

---------- Post added at 06:40 PM ---------- Previous post was at 06:39 PM ----------


<!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=iso-8859-1" />
<title>Untitled Document</title>
</head>

<body>
<form method="POST" action="ch4-9-1.php">
<?php
$num = $_POST['number'];
for ($counter=0; $counter < $num ; $counter++)
{
$OffSet = $counter+1 ;
echo "<b> <br>pleas enter the name of friend number $OffSet<br>";
echo "<b> <input name = child[] type = text>";
}
?>
<br>
<br>
<input type="submit" value="submite order">

</form>

</body>
</html>



این صفحه دوم

---------- Post added at 06:40 PM ---------- Previous post was at 06:40 PM ----------


<!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=iso-8859-1" />
<title>Untitled Document</title>
</head>

<body>
<?php
$c= $_POST['child'];
echo "<b> your friend's names are:<br>";
foreach($c as $index)
{
echo "<b>".$index."<br>";
}
?>
</body>
</html>




اینم صفحه سوم

Rezash
April 18th, 2011, 19:04
<?php
$c= $_POST['child'];
if(!is_array($c))
{
echo "debuging... <br />";
print_r($_POST);
die();
}
echo "<b> your friend's names are:<br>";
foreach($c as $index)
{
echo "<b>".$index."<br>";
}
?>
در صورتي اين رو به جاي كد خودتون بذاريد نتيجه چي ميشه ؟

sm_pakdel
April 18th, 2011, 19:49
نتیجه این شد

debuging...
Array ( )

---------- Post added at 07:49 PM ---------- Previous post was at 07:48 PM ----------

میشه این چند خطی که اضافه کردید رو برام بگید که چه کاری انجام میده ؟

Rezash
April 18th, 2011, 20:08
در foreach بايد يك آرايه داشته باشيم.
من چك كردم كه آيا ورودي آرايه هست يا خير
كه اين كد نشون داد نيست و مقدار كل مقادير post شده هم تهي بود (كه با print_r خروجي گرفتيم.)
دو حالت داره :
يا صفحه رو بدون ارسال پارامترها از فرم بارگذاري كرديد.
يا مشكل از form اچ تي ام ال هست و اطلاعات به همين دليل ارسال نشده.

sm_pakdel
April 18th, 2011, 20:17
تو foreach یه متغیر دارم که مقدار رو از یک آرایه میگیره

یعنی اون متغیر باید آرایه باشه؟

Rezash
April 18th, 2011, 23:08
نه مقدار C رو عرض كردم كه بايد آرايه باشه. در اينجا مقدار c از post استخراج شده و چون هيچ مقدار post شده اي نداريم مقدار c يك آرايه نيست پس foreach خطا ميگيره.

sm_pakdel
April 21st, 2011, 20:00
<!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=iso-8859-1" />
<title>Untitled Document</title>
</head>

<body>
<form action = ch4-11-1.php method = post>
<select>
<?php
$color = array("white",'black","green","blue","brown","red","yellow");
foreach($color as $content)
{
echo "<option>$content</option>";
}
echo "</select><br><br>";
echo "<input type = submit value = submit></form> ";
?>

</body>
</html>




کجای این کد غلطه نمی تونم پیداش کنم

---------- Post added at 08:00 PM ---------- Previous post was at 06:12 PM ----------

حل شد مرسی ایراد از دبل کتیشن ها بود

mohammad021
December 21st, 2011, 12:01
سلام دوستان

لطفا در مورد کد زیر راهنمایی فرمایید(این کد Error در بالای صفحه فروم ویبولتین ظاهر میشه و باقی می مونه) :


Warning: array_merge() [function.array-merge]: Argument #1 is not an array in [path]/includes/class_bootstrap.php(1363) : eval()'d code on line 79

stchost
December 21st, 2011, 12:33
سلام دوستان

لطفا در مورد کد زیر راهنمایی فرمایید(این کد error در بالای صفحه فروم ویبولتین ظاهر میشه و باقی می مونه) :


warning: Array_merge() [function.array-merge]: Argument #1 is not an array in [path]/includes/class_bootstrap.php(1363) : Eval()'d code on line 79

این کدی که دوستمون تاپیک زدن مرتبط با برنامه نویسی شخصی بوده و مشکل شما مرتبط با vb هست ، بهتره در یک قسمت دیگه ای که دوستان در vb سررشته دارن ارسال کنید