Beginner Help - Form not working, not sure why

PHP programming forum. Ask questions or help people concerning PHP code. Don't understand a function? Need help implementing a class? Don't understand a class? Here is where to ask. Remember to do your homework!

Moderator: General Moderators

Post Reply
traxy
Forum Newbie
Posts: 9
Joined: Thu Mar 26, 2009 11:34 pm

Beginner Help - Form not working, not sure why

Post by traxy »

Hey Guys,

I am new to php coding and trying figure out why the following code isnt working. Here is my index page:

Code: Select all

 
<!DOCTYPE html PUBLIC
"-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>HTML Links Golf Club</title>
</head>
<body>
<h1>New Member Form</h1>
<form action:"addMember.php" method:"post">
Member ID
<input type:"text" name:"memberId">
Valid Until
<select name="day" id="day">
      <option value="1">1</option>
      <option value="2">2</option>
      <option value="3">3</option>
      <option value="4">4</option>
      <option value="5">5</option>
      <option value="6">6</option>
      <option value="7">7</option>
      <option value="8">8</option>
      <option value="9">9</option>
      <option value="10">10</option>
      <option value="11">11</option>
      <option value="12">12</option>
      <option value="13">13</option>
      <option value="14">14</option>
      <option value="15">15</option>
      <option value="16">16</option>
      <option value="17">17</option>
      <option value="18">18</option>
      <option value="19">19</option>
      <option value="20">20</option>
      <option value="21">21</option>
      <option value="22">22</option>
      <option value="23">23</option>
      <option value="24">24</option>
      <option value="25">25</option>
      <option value="26">26</option>
      <option value="27">27</option>
      <option value="28">28</option>
      <option value="29">29</option>
      <option value="30">30</option>
      <option value="31">31</option>
</select>
<select name="month" id="month">
      <option value="1">Janu</option>
      <option value="2">Feb</option>
      <option value="3">Mar</option>
      <option value="4">Apr</option>
      <option value="5">May</option>
      <option value="6">Jun</option>
      <option value="7">Jul</option>
      <option value="8">Aug</option>
      <option value="9">Sep</option>
      <option value="10">Oct</option>
      <option value="11">Nov</option>
      <option value="12">Dec</option>
</select> 
 <input type:"text" name:"year">
 <h2><b>Member Information</b></h2></p></p>
Member's First Name:
<input type:"text" name:"memberFirstName">
Last Name:
<input type:"text" name:"memberLastName">
<br />
Member's Phone #
<input type:"text" name:"memberPhone">
Australian Golf Handicap
<select name="handicap" id="handicap">
    <option value="0" selected="selected">00</option>
    <option value="1">01</option>
    <option value="2">02</option>
    <option value="3">03</option>
    <option value="4">04</option>
    <option value="5">05</option>
    <option value="6">06</option>
    <option value="7">07</option>
    <option value="8">08</option>
    <option value="9">09</option>
    <option value="10">10</option>
    <option value="11">11</option>
    <option value="12">12</option>
    <option value="13">13</option>
    <option value="14">14</option>
    <option value="15">15</option>
    <option value="16">16</option>
    <option value="17">17</option>
    <option value="18">18</option>
    <option value="19">19</option>
    <option value="20">20</option>
    <option value="21">21</option>
    <option value="22">22</option>
    <option value="23">23</option>
    <option value="24">24</option>
    <option value="25">25</option>
    <option value="26">26</option>
    <option value="27">27</option>
    <option value="28">28</option>
    <option value="29">29</option>
    <option value="30">30</option>
    <option value="31">31</option>
    <option value="32">32</option>
    <option value="33">33</option>
    <option value="34">34</option>
    <option value="35">35</option>
    <option value="36">36</option>
    <option value="37">37</option>
    <option value="38">38</option>
    <option value="39">39</option>
    <option value="40">40</option>
    <option value="41">41</option>
    <option value="42">42</option>
    <option value="43">43</option>
    <option value="44">44</option>
    <option value="45">45</option>
</select>
<br />
<input type="submit" value="Save Member">
<input type="reset" value="Reset">
<a href="index.html">Cancel and return to main page</a>
</form>
</body>
</html>
 
and here is my php code:

Code: Select all

 
<?php
if($_POST[memberId] == NULL){
echo "Please enter your member ID";
}
if(checkdate($_POST[day],$_POST[month],$_POST[year]) == FALSE){
    echo "Please enter a valid date";
    break;
}
elseif(file_exists(members) == FALSE)
{
mkdir("members");
$memberInformation = "Member ID: $_POST[memberId]\n";
$memberInformation .= "Valid Until: $_POST[day]\\$_POST[month]\\$_POST[year]\n";
$memberInformation .= "Member Name: $_POST[memberFirstName] $_POST[memberLastName]\n";
$memberInformation .= "Member Phone: $_POST[memberPhone]\n";
$memberInformation .= "Handicap: $_POST[handicap]\n";
$memberFile = "$_POST[memberId].txt";
file_put_contents($memberFile,$memberInformation);
echo"File Written";
}
 
?>
 
Now all I am simply trying to do is save the data entered in the form in a file named after that members memberId AND if the file does not exist create it. I am also trying to create a folder to store the member files in and if that folder does not exist create it.

What is happening at the moment is that after I fill out the form and click submit nothing happens, can you guys on here please point me in the right direction and at the same time comment on how I might improve my coding skills.

Thanks.
sujithtomy
Forum Commoner
Posts: 46
Joined: Tue Mar 24, 2009 4:43 am

Re: Beginner Help - Form not working, not sure why

Post by sujithtomy »

Hello,

use = instead of : between attributes,

<form action="addMember.php" method="post"> -- Correct

<form action:"addMember.php" method:"post"> -- Incorrect

Code: Select all

 
 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http=//www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http=//www.w3.org/1999/xhtml">
<head>
<title>HTML Links Golf Club</title>
</head>
<body>
<h1>New Member Form</h1>
<form action="addMember.php" method="post">
  Member ID
  <input type="text" name="memberId">
  Valid Until
  <select name="day" id="day">
    <option value="1">1</option>
    <option value="2">2</option>
    <option value="3">3</option>
    <option value="4">4</option>
    <option value="5">5</option>
    <option value="6">6</option>
    <option value="7">7</option>
    <option value="8">8</option>
    <option value="9">9</option>
    <option value="10">10</option>
    <option value="11">11</option>
    <option value="12">12</option>
    <option value="13">13</option>
    <option value="14">14</option>
    <option value="15">15</option>
    <option value="16">16</option>
    <option value="17">17</option>
    <option value="18">18</option>
    <option value="19">19</option>
    <option value="20">20</option>
    <option value="21">21</option>
    <option value="22">22</option>
    <option value="23">23</option>
    <option value="24">24</option>
    <option value="25">25</option>
    <option value="26">26</option>
    <option value="27">27</option>
    <option value="28">28</option>
    <option value="29">29</option>
    <option value="30">30</option>
    <option value="31">31</option>
  </select>
  <select name="month" id="month">
    <option value="1">Janu</option>
    <option value="2">Feb</option>
    <option value="3">Mar</option>
    <option value="4">Apr</option>
    <option value="5">May</option>
    <option value="6">Jun</option>
    <option value="7">Jul</option>
    <option value="8">Aug</option>
    <option value="9">Sep</option>
    <option value="10">Oct</option>
    <option value="11">Nov</option>
    <option value="12">Dec</option>
  </select>
  <input type="text" name="year">
  <h2><b>Member Information</b></h2>
  </p>
  </p>
  Member's First Name:
  <input type="text" name="memberFirstName">
  Last Name:
  <input type="text" name="memberLastName">
  <br />
  Member's Phone #
  <input type="text" name="memberPhone">
  Australian Golf Handicap
  <select name="handicap" id="handicap">
    <option value="0" selected="selected">00</option>
    <option value="1">01</option>
    <option value="2">02</option>
    <option value="3">03</option>
    <option value="4">04</option>
    <option value="5">05</option>
    <option value="6">06</option>
    <option value="7">07</option>
    <option value="8">08</option>
    <option value="9">09</option>
    <option value="10">10</option>
    <option value="11">11</option>
    <option value="12">12</option>
    <option value="13">13</option>
    <option value="14">14</option>
    <option value="15">15</option>
    <option value="16">16</option>
    <option value="17">17</option>
    <option value="18">18</option>
    <option value="19">19</option>
    <option value="20">20</option>
    <option value="21">21</option>
    <option value="22">22</option>
    <option value="23">23</option>
    <option value="24">24</option>
    <option value="25">25</option>
    <option value="26">26</option>
    <option value="27">27</option>
    <option value="28">28</option>
    <option value="29">29</option>
    <option value="30">30</option>
    <option value="31">31</option>
    <option value="32">32</option>
    <option value="33">33</option>
    <option value="34">34</option>
    <option value="35">35</option>
    <option value="36">36</option>
    <option value="37">37</option>
    <option value="38">38</option>
    <option value="39">39</option>
    <option value="40">40</option>
    <option value="41">41</option>
    <option value="42">42</option>
    <option value="43">43</option>
    <option value="44">44</option>
    <option value="45">45</option>
  </select>
  <br />
  <input type="submit" value="Save Member">
  <input type="reset" value="Reset">
  <a href="index.html">Cancel and return to main page</a>
</form>
</body>
</html>
 
 
Good Luck :)
traxy
Forum Newbie
Posts: 9
Joined: Thu Mar 26, 2009 11:34 pm

Re: Beginner Help - Form not working, not sure why

Post by traxy »

Thanks for the tip, it now works.

I have run into another problem that hopefully you may be able to help with. The problem is that im using the file_put_contents function to try and save a text file in a particular directory but its not saving at all when i use an absolute or relative path.

eg. file_put_contents($memberFile,$memberInformation);

This saves the text file in the current folder on my web server (where my php script is located)
When I try and save it in the subdirectory called members nothing saves.

eg. file_put_contents(members/$memberFile,$memberInformation);

Any idea's on where I have gone wrong?

---------------------------------------------------------------------------------------

One other question is relation to the file_put_contents function. I will need to eventually read the file to edit information in it and I have seen there is another function called file_get_contents where you can specify the number of characters to get and where you start getting them from etc. The problem is for example what if a user types in surname "smith" and then I want to replace that with "thomsonjdfsadf" or some long surname, I am worried that will overwrite information.

Here is what a saved text file currently looks like:

Member ID: test
Valid Until: 1\1\1999
Member Name: GLen test
Member Phone: 55555
Handicap: 0

Any help with that would be great, is my format fine or should I take out things like Member ID: and Handicap: and just leave the important information like test and 0.

----------------------------------------------------------------------------------------------

Last but not least when saving a file with file_put_contents how can I change the permissions to that file when it is being created.


------------------------------------------------------------------------------------------------

Thanks for you help, any by the way I have tried for hours getting this to work so am using this as a last resort and would really appreciate your help.
sujithtomy
Forum Commoner
Posts: 46
Joined: Tue Mar 24, 2009 4:43 am

Re: Beginner Help - Form not working, not sure why

Post by sujithtomy »

Hello,

Could you tell me which value for $memberFile on runtime?
Last but not least when saving a file with file_put_contents how can I change the permissions to that file when it is being created.
use chmod() function after file is being created.
traxy
Forum Newbie
Posts: 9
Joined: Thu Mar 26, 2009 11:34 pm

Re: Beginner Help - Form not working, not sure why

Post by traxy »

Hey,

This is the value for memberFile

$memberFile = "$_POST[memberId].txt";

so if the user types in memberID 226755 it should create a file 226755.txt and store all the member information in that.

P.S all the code is in my first post.

THanks
Darkzaelus
Forum Commoner
Posts: 94
Joined: Tue Sep 09, 2008 7:02 am

Re: Beginner Help - Form not working, not sure why

Post by Darkzaelus »

Code: Select all

$memberFile=$_POST['memberId'].".txt";
Im pretty sure if you want to get part of an array while in double quotes you need {}'s around it:

Code: Select all

$memberFile="{$_POST['memberID']}.txt";
Could be another alternative (correct me if i'm wrong!).

Darkzaelus
Post Reply