2016-04-02 13 views
1

ユーザーが既に送信した場合(つまり、ユーザーあたり1つのレコードのみ)、事前選択が必要な3つのラジオボタンがあります。私は正しく動作していることを知っているクエリを使用して3つの変数を設定しますが、ラジオボタンのコードはそれらを認識しません。どんな助けや指導も大歓迎です。ここではPHPのコードは次のとおりです。クエリで設定された変数が認識されない

$query = "SELECT * "; 
$query .= "FROM mypicks "; 
$query .= "WHERE user_id = {$user_id} "; 
$result = mysqli_query($connection, $query); 

if ($result->num_rows === 1) { 
    $anthem1 = mysqli_query($connection, "SELECT anthem1 FROM mypicks WHERE user_id = '$user_id'"); 
    $cointoss2 = mysqli_query($connection, "SELECT cointoss2 FROM mypicks WHERE user_id = '$user_id'"); 
    $firstscore3 = mysqli_query($connection, "SELECT firstscore3 FROM mypicks WHERE user_id = '$user_id'"); 

    if (isset($_POST['submit'])) { 
     if (isset($_POST['anthem1'])) { 
      $anthem1 = $_POST['anthem1']; 
     }  

     if (isset($_POST['cointoss2'])) { 
      $cointoss2 = $_POST['cointoss2']; 
     }  

     if (isset($_POST['firstscore3'])) { 
      $firstscore3 = $_POST['firstscore3']; 
     } 

     $query = "UPDATE mypicks SET "; 
     $query .= "anthem1 = '{$anthem1}', "; 
     $query .= "cointoss2 = '{$cointoss2}', "; 
     $query .= "firstscore3 = '{$firstscore3}' "; 
     $query .= "WHERE user_id = {$user_id} "; 
     $result = mysqli_query($connection, $query); 
    } 
} 

そしてここでは、ラジオボタンのコードは次のとおりです。

<form action="Game1_MyPicks.php" method="post"> 
    Will the National Anthem be over 3 mins and 15 secs? <br /> 
    Over <input type="radio" name="anthem1" value="Over" <?php if ($anthem1=="Over") print('checked="checked"') ?>/><br /> 
    Under <input type="radio" name="anthem1" value="Under" <?php if ($anthem1=="Under") print('checked="checked"') ?>/><br /> 

    <br /> 
    <br /> 
    <br /> 
    Which team will win the coin toss? <br /> 
    Ravens <input type="radio" name="cointoss2" value="Ravens" <?php if ($cointoss2=="Ravens") print('checked="checked"') ?>/><br /> 
    Niners <input type="radio" name="cointoss2" value="Niners" <?php if ($cointoss2=="Niners") print('checked="checked"') ?> /><br /> 

    <br /> 
    <br /> 
    <br /> 

    Will the first score of the game be a FG? <br /> 
    Yes <input type="radio" name="firstscore3" value="Yes" <?php if ($firstscore3=="Yes") print('checked="checked"') ?>/><br /> 
    No <input type="radio" name="firstscore3" value="No" <?php if ($firstscore3=="No") print('checked="checked"') ?> /><br /> 

    <input class="button-md" type="submit" name="submit" value="Save">                               
</form> 

答えて

1

あなたはこのようクエリを向上させることができます:あなたのフォームで

$query = "SELECT * "; 
$query .= "FROM mypicks "; 
$query .= "WHERE user_id = '$user_id'"; 
$result = mysqli_query($connection, $query); 

if (mysqli_num_rows($result)==='1') {  
    $picked = mysqli_query($connection, "SELECT anthem1, cointoss2, firstscore3 
             FROM mypicks WHERE user_id = '$user_id'"); 
    $res = mysqli_fetch_assoc($picked); 
} 

Over <input type="radio" name="anthem1" value="Over" 
     <?php if($res['anthem1']=="Over"){ print('checked="checked"');} ?>/><br /> 
Under <input type="radio" name="anthem1" value="Under" 
     <?php if($res['anthem1']=="Under"){ print('checked="checked"');} ?>/><br /> 

他の4つのRA dioボタンも同様です。そして、提出されたデータが存在するかどうかを確認:私はそれのコードを使用するときに、私は、ユーザーが作成した記録を持っているにもかかわらず、フォームに到達したとき

if (isset($_POST['submit'])) {   
      $anthem1 = isset($_POST['anthem1'])? $_POST['anthem1']:''; 
      $cointoss2 = isset($_POST['cointoss2'])? $_POST['cointoss2']:''; 
      $firstscore3 = isset($_POST['firstscore3'])? $_POST['firstscore3']:''; 
     if(empty($anthem1)){ 
      $error = 'Anthem1 is empty'; 
      }elseif(empty($cointoss2)){ 
      $error = 'cointoss2 is empty'; 
      }elseif(empty($firstscore3)){ 
       $error = 'firstscore3 is empty'; 
      }else{ 
       $query = "UPDATE mypicks SET "; 
       $query .= "anthem1 = '$anthem1', "; 
       $query .= "cointoss2 = '$cointoss2', "; 
       $query .= "firstscore3 = '$firstscore3' "; 
       $query .= "WHERE user_id = '$user_id'"; 
       $result = mysqli_query($connection, $query); 
       if($result){ 
       echo 'Updated successfully'; 
       }else{ 
       echo 'Problem updatating'; 
       } 
      } 

     } 
+0

Mawiaが、私は$解像度のための「未定義の変数のエラー」を取得します。なぜ$ resが定義されていないのかについての考えはありますか? – user3367183

関連する問題