форма комментария php - PullRequest
       11

форма комментария php

0 голосов
/ 16 ноября 2011

У меня есть форма комментария, которую я создал.Он получает идентификатор из базы данных и распечатывает данные, которые идут с этим идентификатором, но он также выводит информацию в форму.Я хочу пустую форму, чтобы пользователь мог добавить комментарий к записи.

Есть идеи?

Это код для формы:

<form method="post" action="pv.php?id=<?php echo $row['ID']?>&action=<?php echo $form_action ?>">
<fieldset>
    <legend></legend>
    <p>
        <label for="cname">Date Of Birth</label>  *
        <input id="cname" name="dateofbirth" class="required date"  value="<?php echo $row['Date_Of_Birth']?>" />  (eg 1978.11.11)
    </p>
    <p>
        <label for="cgender">Gender</label>   *
        <input type="radio" name="gender" value="Male" <?php if($row['Gender']=='male'){echo 'checked';}?>/> Male <input type="radio" name="gender" value="Female" <?php if($row['Gender']=='female'){echo 'checked';}?>/> Female </td>
    </p>
    <p>
        <label for="curl">Title</label>   *
        <select name="title"   id="title"  class="required">
            <option value="">Please Select</option>
            <option value="Mr" <?php if($row['Title']=='Mr'){echo 'selected';}?>>Mr</option>
            <option value="Ms" <?php if($row['Title']=='Ms'){echo 'selected';}?>>Ms</option>
            <option value="Mrs" <?php if($row['Title']=='Mrs'){echo 'selected';}?>>Mrs</option>
            <option value="Miss" <?php if($row['Title']=='Miss'){echo 'selected';}?>>Miss</option>
            <option value="Other" <?php if($row['Title']=='Other'){echo 'selected';}?>>Other</option>
            </select>
    </p>
    <p>
        <label for="ccomment">First Name</label>     *
        <input type="text" name="firstname" value="<?php echo $row['First_Name']?>" maxlength="50" />
    </p>


    <p>
    <label for="cemail">Last Name</label> *
        <input id="cemail" type="text" name="lastname" value="<?php echo $row['Last_Name']?>" maxlength="75" />
   </p>
    <p>
        <label for="ccomment">Address 1</label>*
        <input type="text" name="address1" value="<?php echo $row['Address_Line_1']?>" maxlength="50" />  
    </p>
    <p>
        <label for="ccomment">Address 2</label>
        <input type="text" name="address2" value="<?php echo $row['Address_Line_2']?>" maxlength="50" />
    </p>
    <p>
        <label for="ccomment">City</label>*
        <input type="text" name="city" value="<?php echo $row['City']?>"  maxlength="50" />
    </p>
    <p>
        <label for="ccomment">Postcode</label>*
        <input type="text" name="postcode" value="<?php echo $row['Postcode']?>" maxlength= "10" />  (eg LE5 5QE)
    </p>
    <p>
        <label for="ccomment">Contact No</label>*
        <input type="text" name="contactno" value="<?php echo $row['Contact_No']?>" maxlength= "12" />  (eg 077448825723)
    </p>
    <p>
        <label for="ccomment">Email</label>*
        <input type="text" name="email" value="<?php echo $row['Email']?>" maxlength= "40"/>  (eg info@example.com)
    </p>
    <p>
        <label for="ccomment">Comment</label>
        <textarea rows="10" cols="30" name="note"  maxlength= "500"><?php echo $row['Additional_Comment']?></textarea>
    </p>
    <p>
        <input class="submit" type="submit" value="Submit"/>
    </p>
    <p>
    <a href='pv.php'>Main Page</a>
   </p>

</fieldset>

Это код для распечатки данных на странице:

 if($_GET['action']=='comment'){
    $form_action = 'comment_ok';
    $id=$_GET['id'];
    $result = mysql_query("SELECT * FROM project_data WHERE id='$id'");
    $row = mysql_fetch_array($result);

    echo'<b>';
      echo $row['Date_Of_Birth'];
      echo '&nbsp&nbsp';
      echo $row['Gender'];
      echo '&nbsp&nbsp';
      echo $row['Title'];
      echo '&nbsp&nbsp';
      echo $row['First_Name'];
      echo '&nbsp&nbsp';
      echo $row['Last_Name'];
      echo '&nbsp&nbsp';
      echo $row['Address_Line_1'];
      echo '&nbsp&nbsp';
      echo $row['Address_Line_2'];
      echo '&nbsp&nbsp';
      echo $row['City'];
      echo '&nbsp&nbsp';
      echo $row['Postcode'];
      echo '&nbsp&nbsp';
      echo $row['Contact_No'];
      echo '&nbsp&nbsp';
      echo $row['Email'];
      echo '&nbsp&nbsp';
      echo $row['Additional_Comment'];
      echo '</b>';



 }

и фрагмент кода, который я использую для отправки идентификатора в форму:

echo "<td><a href='pv.php?action=edit&id=" . $row['ID']."'>Edit</a>&nbsp&nbsp<a href='pv.php?action=delete_ok&id=" . $row['ID']."'>Delete</a>&nbsp&nbsp**<a href='pv.php?action=comment&id=" . $row['ID']."'>Comment</a></td>"**;
      echo "</tr>";

У кого-нибудь есть идеи?

Ответы [ 2 ]

0 голосов
/ 18 ноября 2011

Я немного смущен вашим вопросом, поэтому вы хотите, чтобы 1 страница позволяла пользователю заполнить пустую форму, просмотреть заполненную форму и обновить форму?

Вы можете заполнить пустую формуФорма или заполненная форма, проверяя, существует ли идентификатор, например:

<?
if (isset(id)) // Here you can check if the id exists, which means you will be doing an update to the sql
echo'
<form method="post" action="pv.php?id=' . $row['ID'] . '&action=' . $form_action . '">
   <!-- Your form here with values -->
e.g. <label for="cemail">Last Name</label> *
     <input id="cemail" type="text" name="lastname" value="' . $row['Last_Name'] . '" maxlength="75" />
</form>';

// Put your sql update here to take the values from the above form

}
elseif (!isset(id)) // Here there is no id so you will want to insert
{

echo'
<form method="post" action="pv.php?id=' . $row['ID'] . '&action=' . $form_action . '">
   <!-- Your form here with values -->
e.g. <label for="cemail">Last Name</label> *
     <input id="cemail" type="text" name="lastname" maxlength="75" /> // No value here because will insert new record
</form>';

// Put your sql insert here to create a new record
}
?>

Вы также хотите, чтобы пользователь мог полностью добавить новый комментарий вместо редактирования уже связанного с его идентификатором?Я думаю, что вам нужно будет сделать это, предоставив им возможность добавить еще один комментарий, для этого я создам новую таблицу, а затем вставлю в нее комментарии, так что у вас есть одна таблица с информацией о пользователе, затем другая таблица скомментарии пользователей, например:

example_users:
id = 1 
fname=Joe 
lname=Bloggs 
email=jbloggs@example.com

user_comments
id=1
user_id=1
comment = Comment will be saved here

Таким образом, любой пользователь может иметь любое количество комментариев, вы можете отобразить это на странице с помощью оператора foreach, чтобы отобразить текстовое поле со всеми существующими комментариями, а затемв конце оставьте пустой для всех новых, затем они смогут отредактировать любой комментарий и добавить новый комментарий.

0 голосов
/ 16 ноября 2011

Если вы хотите, чтобы форма была пустой, просто установите атрибут value пустым. Например, значение = ''. За исключением поля id.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...