مشکل در نمایش محتویات فرم

Arman_gh

New Member
سلام دوستان من تازه دارم php میخونم و همین اولای کار دچار مشکل شدم من توی فایلی با نام form.php یه فرم HTML طراحی کردم و خصیصه action اون را با فایل recieve.php مقدار دهی کردم که توی این فایل دومی میخوام که محتویات فرم رو نشونم بده.ولی یه مشکلی هست parser به من میگه که دو متغیر answer , qust رو تعریف نکردی در صورتی که طبق اون چیزی که توی کناب بوده باید خوده php این دوتا متغیر رو که از فرم هستن بشناسه ولی...
من محتویات این دو فایل رو اینجا میزارم
PHP:
<html>

<head>
  <title></title>
</head>

<body>
    <div align="center">
  <form action="receive.php">

  <input type="text" name="answer"><br><hr size=2>
  <textarea cols=20 rows=5 name="qust"></textarea><br>
  <input type="submit" value="Click">
  </form>
   </div>



</body>

</html>
,و فایل receive.php
PHP:
<html>

<head>
  <title></title>
</head>

<body>
<?php
          print"$answer";
          print"this is a your qust var!";
          print"$qust";
?>
</body>

</html>
 
ببینید
شما موقع ایجاد یه فرم باید method رو تعیین کنید(یعنی شیوه ارسال داده های فرم)
دو متد وجود داره POST و GET
توی فایل دوم هم برای دسترسی به متغیر های ارسال شده بشته به متدی که تعیین کردین یکی از دو مورد زیر رو استفاده کنید
PHP:
$_POST['نام متغیر فرم']
$_GET['نام متغیر فرم']
در مورد متد های ارسال اطلاعات فرم قبلا هم صحبت شده
ولی بطور خلاصه اینکه با متد GET (برخلاف متد POST ) نام متغیر ها و مقدار آن ها در نوار آدرس مرورگر قابل مشاهده هست و برای ارسال اطلاعات مهم به کار نمی ره
 
کد های شما را با استفاده از متد POST اصلاح کردم
ولی قبل از استفاده حتما بررسی کنید.
PHP:
<html>

<head> 
  <title></title> 
</head> 

<body> 
    <div align="center"> 
  <form action="receive.php" method="POST">

  <input type="text" name="answer"><br><hr size=2> 
  <textarea cols=20 rows=5 name="qust"></textarea><br> 
  <input type="submit" value="Click"> 
  </form> 
   </div> 
</body> 

</html>




PHP:
<html> 

<head> 
  <title></title> 
</head> 

<body> 
<?php 
          print $_POST['answer']; 
          print"this is a your qust var!"; 
          print $_POST['qust']; 
?> 
</body> 

</html>
 
آخرین ویرایش:

Ocarina

Member
Arman_gh گفت:
سلام دوستان من تازه دارم php میخونم و همین اولای کار دچار مشکل شدم من توی فایلی با نام form.php یه فرم HTML طراحی کردم و خصیصه action اون را با فایل recieve.php مقدار دهی کردم که توی این فایل دومی میخوام که محتویات فرم رو نشونم بده.ولی یه مشکلی هست parser به من میگه که دو متغیر answer , qust رو تعریف نکردی در صورتی که طبق اون چیزی که توی کناب بوده باید خوده php این دوتا متغیر رو که از فرم هستن بشناسه ولی...
من محتویات این دو فایل رو اینجا میزارم
PHP:
<html>

<head>
  <title></title>
</head>

<body>
    <div align="center">
  <form action="receive.php">

  <input type="text" name="answer"><br><hr size=2>
  <textarea cols=20 rows=5 name="qust"></textarea><br>
  <input type="submit" value="Click">
  </form>
   </div>



</body>

</html>
,و فایل receive.php
PHP:
<html>

<head>
  <title></title>
</head>

<body>
<?php
          print"$answer";
          print"this is a your qust var!";
          print"$qust";
?>
</body>

</html>
سلام برای رفع مشکلت باید قسمت register_global رو از توی فایل php.ini از شاخه ویندوز فعل کنی... اونوقت میتونی به صورت سراسری از متغیرهات استفاده کنی...
البته همنطور که دوستان عرض کردند از post_$ هم میتونی استفاده کنی... اما برای روش خودت باید register_global رو فعال کنی
 

Arman_gh

New Member
من الان امتحان کردم ا با متغیر سراسری $_POST وتی این خطا رو داد
Parse error: parse error, expecting `T_STRING' or `T_VARIABLE' or `T_NUM_STRING' in c:\program files\easyphp1-8\www\receive.php on line 9
 
بله یه مشکل کوچیک بود
درست شد
فکر نکنم دیگه مشکلی باشه
________________________
ضمنا آقای مرادی
بهتره یه نگاه به کد های خود ایشون بندازی
مشکل اساسی توی نحوه کد نویسی برای ارسال و فراخوانی متغیر های فرم بود.
 

جدیدترین ارسال ها

بالا