обновить данные с помощью php и радио кнопок - PullRequest
0 голосов
/ 28 октября 2019

Моя форма не обновляется. Это просто игнорирование кода php. Я использовал один и тот же PHP-код с разными формами и никогда не было проблем. Я не знаю, так ли это, потому что сейчас я использую переключатели.

if (isset($_POST['submitinjury'])) {
   $query = "UPDATE injury SET neck=?,
          upperback=?,
          lowerback=?,
          chest=?,
          shoulder=?,
          arm=?,
          hand=? WHERE userid=?";
    $stmt = mysqli_prepare($db, $query);
    mysqli_stmt_bind_param($stmt, 'ssssssss', $_POST['neck'], $_POST['upperback'], $_POST['lowerback'], $_POST['chest'],  $_POST['shoulder'], $_POST['arm'], $_POST['hand'],  $_SESSION['id']);
    mysqli_stmt_execute($stmt);
    exit(header('location: home.php'));
} 

Форма. это в файле new.php.

<form action="new.php"  method="post"   >
  <table>
    <tr>
      <th style="font-size:18px" >Any previous injuries y</th>
    </tr>
    <tr>
      <td>Previous neck injury/surgery?</td>
      <td></td>
      <td></td>
      <td><label class="container">Yes
            <input type="radio"  name="neck" value="yes" > 
            <span class="checkmark"></span>
          </label></td>
      <td><label class="container">None
            <input value="none" type="radio" checked="checked" name="neck">
            <span class="checkmark"></span>
          </label></td>
    </tr>
    <tr>

      <td>Previous upperback injury/surgery?</td>
      <td></td>
      <td></td>
      <td><label class="container">Yes
            <input type="radio"  name="upperback" value="yes" > 
            <span class="checkmark"></span>
          </label></td>
      <td><label class="container">None
             <input value="none" type="radio" checked="checked" name="upperback">
             <span class="checkmark"></span>
          </label></td>
     </tr>
     <tr>
       <td>Previous lowerback injury/surgery?</td>
       <td></td>
       <td></td>
       <td><label class="container">Yes
             <input type="radio"  name="lowerback" value="yes" > 
             <span class="checkmark"></span>
           </label></td>
       <td><label class="container">None
             <input value="none" type="radio" checked="checked" name="lowerback">
             <span class="checkmark"></span>
             </label></td>
     </tr>
     <tr>
       <td>Previous chest injury/surgery?</td>
       <td></td>
       <td></td>
       <td><label class="container">Yes
             <input type="radio"  name="chest" value="yes" > 
             <span class="checkmark"></span>
           </label></td>
       <td><label class="container">None
             <input value="none" type="radio" checked="checked" name="chest">
             <span class="checkmark"></span>
           </label></td>
     </tr>


     <tr>
       <td>Previous shoulder injury/surgery?</td>
       <td><label class="container">Both
             <input  value="both" type="radio"  name="shoulder">
             <span class="checkmark"></span>
           </label></td>
       <td><label class="container">Left
             <input  value="left" type="radio"  name="shoulder">
             <span class="checkmark"></span>
           </label></td>
       <td><label class="container">Right
             <input value="right" type="radio"  name="shoulder">
             <span class="checkmark"></span>
           </label></td>
       <td><label class="container">None
             <input value="none"  type="radio" checked="checked" name="shoulder">
             <span class="checkmark"></span>
           </label></td>
     </tr>
     <tr>
        <td>Previous arm injury/surgery?</td>
        <td><label class="container">Both
              <input  value="both" type="radio"  name="arm">
              <span class="checkmark"></span>
            </label></td>
        <td><label class="container">Left
              <input  value="left" type="radio"  name="arm">
              <span class="checkmark"></span>
            </label></td>
        <td><label class="container">Right
              <input value="right" type="radio"  name="arm">
              <span class="checkmark"></span>
            </label></td>
        <td><label class="container">None
              <input type="radio" checked="checked" value="none" name="arm">
              <span  class="checkmark"></span>
            </label></td>
      </tr>
      <tr>
        <td>Previous hand/wrist injury/surgery?</td>
        <td><label class="container">Both
              <input  value="both" type="radio"  name="hand">
              <span class="checkmark"></span>
            </label></td>
        <td><label class="container">Left
              <input  value="left" type="radio"  name="hand">
              <span class="checkmark"></span>
            </label></td>
        <td><label class="container">Right
              <input value="right" type="radio"  name="hand">
              <span class="checkmark"></span>
            </label></td>
        <td><label class="container">None
              <input type="radio" checked="checked"  value="none"  name="hand">
              <span class="checkmark"></span>
        </label></td>
      </tr>


    </table>

    <button  type="submit" name="submitinjury" >Submit</button>

</form>

После нажатия кнопки просто обновите страницу, и в базе данных ничего не обновится.

1 Ответ

0 голосов
/ 28 октября 2019

Кажется, проблема вызвана session. Попробуйте добавить session_start().

if (isset($_POST['submitinjury'])) {
   session_start();
   $query = "UPDATE injury SET neck=?,
          upperback=?,
          lowerback=?,
          chest=?,
          shoulder=?,
          arm=?,
          hand=? WHERE userid=?";
    $stmt = mysqli_prepare($db, $query);
    mysqli_stmt_bind_param($stmt, 'ssssssss', $_POST['neck'], $_POST['upperback'], $_POST['lowerback'], $_POST['chest'],  $_POST['shoulder'], $_POST['arm'], $_POST['hand'],  $_SESSION['id']);
    mysqli_stmt_execute($stmt);
    exit(header('location: home.php'));
} 
...