2012-02-10 3 views
1

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

Пожалуйста, помогите мне

ПОЖАЛУЙСТА ПРОСТИ МОЕ форматирование я напечатал на мобильном. Благодарим за терпение.

<?php session_start(); ?> 
<?php require 'includes/dbconnect.php' ; ?> 
<?php require 'includes/header.inc.php'; ?> 

<?php  
$matric_no = mysql_real_escape_string($_POST['matric_no']); 

if ($_POST['matric_no'] == "") 
{ 
echo"<div id=\"contentRight\">"; 
echo"<idv id=\"msg\">" ; 

echo "You didn't enter a <span style=\"color:red\">Matric Number</span>"; 

echo"</div>"; 
echo"</div>"; 
exit(); 
} 

    $query = "SELECT matric_no 
        FROM students 
        WHERE matric_no = '$_POST[matric_no]'"; 


    $result = mysql_query($query); 

    $duplicates = mysql_num_rows($result); 

    if ($duplicates < 1) 
    { 

    echo"<div id=\"contentRight\">"; 

    echo"<idv id=\"msg\">" ; 

    echo "You dont have a record for <span style=\"color:red\">$matric_no</span>" ; 

    echo "</div>" ; 
    echo "</div>" ; 
    exit(); 
    } 


    $result = mysql_query("SELECT matric_no, first_name, last_name, other_name 
    FROM students 
      WHERE matric_no = '".mysql_real_escape_string($_POST['matric_no'])."'") or die(mysql_error()); 


    $number_cols = mysql_num_fields($result) ; 

    echo "<div id=\"contentRight\">" ; 

    echo "<span class=\"header\">"; 

    echo "<p><b>Matric Number: ".mysql_real_escape_string($_POST['matric_no'])  ."</b></p>"; 

    echo "<table border = 1 , cellspacing = 0  , cellpadding = 2 bgcolor=lemonchiffon >\n"; 

    echo "<tr align=center>\n"; 


    for ($i=0; $i<$number_cols; $i++)  
    { 

    echo "<th>" . mysql_field_name($result, $i). "</th>\n"; 

    } 

    echo "</tr>\n"; 

    while ($row = mysql_fetch_row($result)) 
    { 

    echo "<tr align=center>\n"; 

    for ($i=0; $i<$number_cols; $i++) 
    { 

     echo "<td>"; 

     if (!isset($row[$i])) 

     {echo "NULL";} 

     else 

     {echo $row[$i];} 

     echo "</td>\n"; 

     } 

     echo "</tr>\n"; 

     } 

     echo "</table>"; 
     echo"</span>" ; 

     echo"</div>"; 



     ?> 

     <br /> 
     <?php 
    while($row = mysql_fetch_array($result)){ 
    ?> 

    <div id="contentRight"> 

     <p> 

    Select the Score options you will like to update: 

    <form action="student_update2.php" method="post"> 

    <ul> 
     <li>Matric Number: &nbsp;<input    type="text" name="matric_no" value="<?php echo $row['matric_no'] ; ?>">   </li><br/><br/> 
    <li>First Name: <input type="text"    name="first_name" value="<?php    echo $row['firts_name'] ; ?>"> </li><br  /><br/> 
    <li>Last Name: <input type="text"    name="last_name" value="<?php    echo $row['last_name'] ; ?>"> </li><br  /><br /> 
    <li>Other Names: <input type="text"   name="other_name" value="<?php   echo $row['other_name'] ; ?>"</li> <br  /><br /> 


    <input type="submit" name="submit"   value="Update" /> 
    <input type="hidden" name       ="submitted" value="TRUE" /> 

<input name="Reset" type="reset"    value="Reset" /> 

    </ul> 
    </div> 

     </div> 
    </form> 

    <?php 
    }    
require 'includes/footer.php'; ?> 

formmatting cleaned a little

+1

Это, должно быть, было больно набирать на мобильном телефоне 0_0 – CountMurphy

+1

Не могу помочь, но поставил вопрос. * passion * (~ _ ~) –

ответ

0

Попробуйте добавить это:

$result = mysql_query("SELECT matric_no, first_name, last_name, other_name 
        FROM students 
        WHERE matric_no = '".mysql_real_escape_string($_POST['matric_no'])."'") or die(mysql_error()); 

Над этим (около линии 99):

while ($row = mysql_fetch_array($result)){ 
?> 
<div id="contentRight"> 
<p>Select the Score options you will like to update:</p> 

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

+0

Является ли это когда я использую оператор while, я должен также запустить запрос для него? Я думал, что если я запустил запрос и сделал что-то вроде $ row = mysql_fetch_array ($ result); AND $ row1 = mysql_affected_row ($ result); после выполнения запроса, так как i инструкции SELECT одинаковы.? –

+0

Я забыл сказать СПАСИБО за ответ. Он работал как магия. –

+0

Без проблем, рад, что я мог бы помочь :) Это не имело бы значения, потому что вы уже пропустили mysql_fetch_array один раз. Там ничего не осталось, пройдя через него. Простое исправление заключалось в том, чтобы просто повторно использовать запрос, как я сказал в своем ответе, но лучшим решением было бы загрузить результаты в массив, который позже можно было бы повторить с помощью цикла for. – seanbreeden

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