0

I want to select a row from MySQL database which there are multiple rows.

I've chosen radio button for selection and I've put id of that row in radio button value.

The problem is the posted radio button is set and when I echo it as you can see in the code it shows me the right id.

When I want to select from database with MySQL query it gives me and index undefined error, the strange point is when I select a table that contains just one row this code is working but when number of rows are more than one I am not able to select the chosen row.

Table code:

<?
if($_SESSION["count"]!=0 || $_SESSION["count"]!="")
{
?>
    <!-- begining of levels informations -->
    <form name="form2"  method="POST" dir="rtl" action=""  style="font-family:'B_yekan';"> 
<div align="center" width="900" >
    <table class="styled-table" cellspacing="0" width="900" border="1">
    <tr>
        <th width="10" scope="col" ></th>
        <th width="60" scope="col">level</th>
        <th width="60" scope="col">date</th>
        <th width="60" scope="col">time</th>    
        <th width="54" scope="col">price</th>
        <th width="60" scope="col">mark</th>
    </tr>
    <?php
    $id = array();
    while($rows=mysql_fetch_array($result)){
    $id[]=$rows['id'];
    ?>
    <tr>
    <td><input class="styled-input" type="hidden" name="id[]" id="id" value= "<? echo $rows['id']; ?>"  /></td>
    <td><input class="styled-input" type="text" name="lev" id="lev" value="<? echo $tbl_name; ?>"  /></td>
    <td><input class="styled-input" type="text" name="date[]"  id="date" value="<? if($rows['date']=="1"){echo "even";}else{echo "odd";}?>" /></td>
    <td><input class="styled-input" type="text" name="time[]" id="time"
                    value="<?if($rows['time']=="pm1"){ echo"16 - 17:30";}
                    elseif($rows['time']=="pm2"){ echo "17:45 - 19:15";}
        elseif($rows['time']=="pm3"){echo "19:30 - 21";}?>" />
                </td> 
    <td><input class="styled-input" type="text" name="price[]" id="price" value= "<? echo $rows['price']; ?>" /></td>

    <td><input class="styled-input" style="padding: 5px;width:20px" type="radio" name="mark[]" id="mark" value="<? echo $rows['id']; ?>" /></td>

</tr>
<?php
 }//end of loop
?>
</table>
</div>
<input class="styled-button-8"  type="Submit" value="firstchoose" name="firstchoose" />

    <?}//end of if check for count?>            
    </form>

Select code:

<!-- first choose level -->
    <?php
    // Check if button name "Submit" is active, do this 
    if(isset($_POST['firstchoose']) && $_POST['firstchoose'] == 'firstchoose')
        {

         $tbl_name=$_POST['lev'];

         for($i=0;$i<$_SESSION["count"];$i++)
        {

            $checked =mysql_real_escape_string($_REQUEST['mark'][$i]);              
            echo $checked;
            $sql2="SELECT * FROM $tbl_name WHERE `id`='".mysql_real_escape_string($checked)."' ";

            $result2=mysql_query($sql2);
            $data = mysql_fetch_assoc($result2);
            $count2=mysql_num_rows($result2);
        }


        if(isset($result2)){
        ?>
        <script language="javascript">alert('the level is selected successfully.');    </script>
        <?php

        }

    }
    ?>
<!-- end of first choose level -->
Prix
  • 19,417
  • 15
  • 73
  • 132
  • Post the complete error message you get and also do a `print_r($_REQUEST['mark']);` and post the result. – Prix Aug 15 '13 at 06:19
  • Also post the complete code of the second file, your current code does not contain the connection lines etc – Hanky Panky Aug 15 '13 at 06:19
  • @Prix thanks for the tip , I've changed the mark[] to mark and the problem solved . all of the codes are in one page because of that in form action nothing is set . – mohammad hosseini Aug 15 '13 at 07:03
  • @mohammadhosseini [consider checking my answer below as the right answer if it solved your issue, see here how.](http://stackoverflow.com/about) – Prix Aug 15 '13 at 07:12

0 Answers0