2013-03-18 1 views
0

Я пытаюсь сохранить значение моего динамически генерируемого флажка, пометить и выбрать тег в базу данных mysql, используя php в этих тегах, которые я извлекаю значение из другой базы данных, и я пытаюсь сохранить данные проверенного поля с меткой и выбранным значением параметра, но я не могу это сделать, пожалуйста, предложите мне, где я делаю неправильно.Как получить (вызывать) динамически сгенерированное значение переменной для сохранения в (mysql) базе данных с помощью php

<script language="javascript"> 
       function getmatchplayer1(mid) 
       { 
        window.location="?mid="+mid; 
       } 

       </script> 
     </head> 
     <?php 

     $host="localhost";       // Host name 
    $username="root";      // Mysql username 
    $password="";       // Mysql password 
    $db_name="test";     // Database name 

    // Connect to server and select database. 
    mysql_connect("$host", "$username", "$password")or die("cannot connect"); 

    // select database on server 
    mysql_select_db("$db_name")or die("cannot select DB"); 


     if(isset($_POST['SaveTeam'])){ 
    $tmnmA = $_POST['TeamNameA']; 
    $tmnmB = $_POST['TeamNameB']; 
    $mch_id = $_POST['mtch_id']; 
    $chk_id = $_POST['$chkid']; 
    $cric_nm = $_POST['$ply_nm']; 
    $chk_rnk = $_POST['$chkrnk']; 


    $sqlbat = "INSERT INTO board(cricketer_id, status,Runs,Sixes,Fifty,Hundred,Total_Score,Total_Points)VALUES('$cric_nm', 'NP','0','0','0','0','0','0')"; 

    $retval = mysql_query($sqlbat); 
    if(! $retval) 
    { 
     die('Could not update data: ' . mysql_error()); 
    } 
    echo "Updated data successfully\n"; 

    } 
      $sql=mysql_query("SELECT * FROM tbl_info LIMIT 5"); 
      $cric_id = $resultmp['player_id']; 
     ?> 
    <body style="align:center"> 
    <form method="post" id="form1" name="form1" action=""> 
      <div style="width:850px; margin-left:55px; text-align:right"> 
       <input type="submit" id="SaveTeam" name="SaveTeam" value="  Save  " /> 
      </div> 
    <table align="center" width="900" height="auto" style="border-top:1px solid #CCCCCC;border-right:1px solid #CCCCCC; border-left:1px solid #CCCCCC; cellspacing:0px; cellpadding:0px;"> 
    <tr style="border:1px solid #CCCCCC"> 
     <td width="450" style="border:1px solid #CCCCCC"> Today's Match:-&nbsp;&nbsp;&nbsp; 
     <select name="mtch_id" id="mtch_id" onchange="getmatchplayer1(this.value)"> 
      <option> Select Team </option> 
      <?php 
        $i=1; 
        $sqlm=mysql_query("SELECT * FROM t_match LIMIT 5"); 
        while ($resultm=mysql_fetch_array($sqlm)) 
        { 
         $mtch=$resultm['match_no']; 
         echo "<option id='".$i."' value='".$mtch."'>"; 
          echo $mtch; 
         echo "</option>"; 
        $i++;} 
       ?> 
     </select></td> 
     <td width="450" style="border:1px solid #CCCCCC"> 
        <?php 

            $j=1; 
            if (isset($_REQUEST['mid'])) 
            { 
             $mid=$_REQUEST['mid']; 
            } 
            $sqlm1=mysql_query("SELECT * FROM t_match WHERE match_no = '$mid'"); 
            while ($resultm1=mysql_fetch_array($sqlm1)){ 
             $mtch=$resultm1['match_no']; 
             $mtch1=$resultm1['team1']; 
             $mtch2=$resultm1['team2']; 
             $chkid = 'a'.$a; 
         ?> 
       </td> 
    </tr> 
    <tr style="border:1px solid #CCCCCC"> 
     <td style="text-align:center; border:1px solid #CCCCCC"> 
     <?php 
      echo "Team - ".$mtch1; 
     ?> 
     </td> 
     <td style="text-align:center; border:1px solid #CCCCCC"> 
     <?php 
      echo "Team - ".$mtch2; 
      } 
     ?> 
     </td> 
    </tr> 

    <tr> 
     <td height="auto" colspan="2"> 
     <div id="update" style="width:900px; height:24px;"> 
     <div style="float:left; width:450px; height:24px;"> 
     <?php 
        $a=1; 
        $b=2; 
        $k=1; 
        $sqlmp=mysql_query("SELECT * FROM tbl_info WHERE player_team = '$mtch1' LIMIT 5"); 
        while ($resultmp=mysql_fetch_array($sqlmp)){ 

        echo "<SCRIPT LANGUAGE='JavaScript'> 

    //on checked disabled enabled condition 

    function codenameA".$a."() 
    { 
     if (document.form1.a".$a.".checked) 
     { 
      document.form1.b".$a.".disabled = false; 
     } 
     else 
     { 
      document.form1.b".$a.".disabled = true; 
     } 
    } 

    /*Condition for limit the checked up to 11 for team A*/ 

    //initial checkCount of zero 
    var checkCount = 0 

    //maximum number of allowed checked boxes 
    var maxChecks = 11 

     function setChecksA".$a."(obj) 
     { 
      //increment/decrement checkCount 
      if (obj.checked) 
      { 
       checkCount=checkCount+1 
      } 
      else 
      { 
       checkCount=checkCount-1 
      } 
      //if they checked a 11th box, uncheck the box, then decrement checkcount and pop alert 
      if (checkCount>maxChecks) 
      { 
       obj.checked=false 
       document.form1.b".$a.".disabled=true; 
       checkCount=checkCount-1 
       alert('you may only choose up to '+maxChecks+' options') 
      } 
     } 
     //--> 
     </script>"; 

     ?> 

       <div style="float:left; width:80%; height:24px; border:1px solid #CCCCCC"> 
        <input onclick='codenameA<?php echo $a; ?>(), setChecksA<?php echo $a; ?>(this)' type='checkbox' id='a<?php echo $a; ?>' name='a<?php echo $a; ?>' value='<?php echo $resulttmp['player_id']; ?>' /><input type="hidden" id="lt<?php $a; ?>" name="lt<?php $a; ?>" value="<?php echo $resulttmp['player_name']; ?>" />&nbsp;&nbsp;&nbsp;<?php echo $resultmp ['player_name']; ?> 
       </div> 
       <div style="float:right; width:19%; height:24px; border:1px solid #CCCCCC"> 
        <select disabled='disabled' id='b<?php echo $a; ?>' name='b<?php echo $a; ?>' style='width:100%;'> 
      <option> 
       - - 
      </option> 
      <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> 
      </select> 
       </div> 
     <?php   
     $a++; 
     $b++; 

    } 
    ?> 
    </div> 
     </td> 
    </tr> 
    </table> 
    </form> 
+1

Этот код является огромным беспорядком, поэтому его будет сложно вам помочь, однако вы публикуете какое-либо значение с именем $ chkrnk? PHP не оценивает переменные внутри «инкапсулированных строк». – cernunnos

+0

Почему ты не в состоянии это сделать? Что вызывает проблему? Ошибки? –

+0

@AneeshDogra Я пытаюсь получить значение флажка, метки и окна выбора, но его идентификатор/имя генерируются динамически, поэтому я не могу получить точное имя переменной/имя. для сохранения в базе данных – ShriD

ответ

1

Если я правильно понял, вы генерируете имена входов динамически, используя переменную приращения $ a. Но по какой-то причине вы не можете пересчитать эти имена при публикации, так что вы не можете получить опубликованные значения. Вы можете решить эту проблему разными способами, один для генерации имен ввода таким образом:

<input type="checkbox" name="blah[$a]"/> 
<select name="bleh[$a]">...</select> 

Это приведет к сообщению с массивом, как так:

array( 
    "blah" => array($a => valueofcheckbox), 
    "bleh" => array($a => valueofselect) 
) 

Что вы можете разобрать с простым Еогеасп

foreach ($_POST["blah"] as $a => $value) { 
    ... 
} 

foreach ($_POST["bleh"] as $a => $value) { 
    ... 
} 

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

PS: Код, который я разместил, является псевдокодом.

+0

Я пробовал это, но когда я использовал [$ a] имя для флажка и b [$] name для выбора его, показывающего пустой массив. – ShriD

+0

Отключены ли они, когда вы отправляете форму? – cernunnos

+0

No @cernunnos, когда я нажимаю на флажок, а затем выпадаю, активируйте его, а затем после того, как я попытаюсь сохранить значение флажка и выпадаю. – ShriD

Смежные вопросы