2013-09-20 2 views
2

Этот php-код создает таблицу, в которой есть кнопка «книга» для каждой строки.извлекать данные из mysql и использовать его в другой форме

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

<?php 
    $phase=$_GET["q"]; 
    $sql ="select id, phase,size, facing, sply, status from plot where status='avail' and phase='$phase'"; 
    $ret=mysql_query($sql, $connect); 

    echo "<form action='restricted.php' method='get'>"; 

    echo"<div style='overflow-y:scroll;height:200px;float:left;' ><table border=1 > 
    <tr> 
    <td>select </td><td>phase</td> <td>site no.</td> <td>plot-size</td> <td>face</td> <td>sply</td> <td>status</td> 
    </tr>" ; 
    while($row = mysql_fetch_array($ret, MYSQL_ASSOC)) 
    { 

     echo "<tr>". 
      "<td><input type='submit' name='book' value='book' onClick=\"whichForm('send_to_one');\" /></td>". 
      "<td><input type='text' value=\"{$row['phase']}\" name='phase' size='3' readonly /> </td>". 
      "<td><input type='text' value=\"{$row['id']}\" name='site' size='4' readonly /></td>". 
      "<td> {$row['size']} </td>". 
      "<td> {$row['facing']} </td>". 
      "<td>{$row['sply']} </td> ". 
      "<td>{$row['status']} </td> ". 
      "</tr>"; 

    } 
    echo "</table></div>"; 

    mysql_close($connect); 

    ?> 
+0

сделать класс и использовать функции класса прямо на странице, где вам нужны данные. Basic php, mysql..what проблема, с которой вы сталкиваетесь? –

+0

нет необходимости использовать функцию onclick –

+0

OPUS, я не смог получить доступ к значению «фаза» и «сайт» для строки «книга», после чего щелкнула «книга» для любой строки, «фазы» и «строки», сайт "из всех строк передаются в« get » – user957309

ответ

2

Вы должны переместить тэг формы в то время как петли и закрыть его в петлю, так что вы можете иметь различную форму для разных строк и кнопки отправки он отправит только соответствующую форму.

1

Вы выполняете функцию whichForm(), когда вы нажимаете на кнопку. В этой функции вы можете добавить фазу переменных и сайт.

Что-то вроде этого:

echo "<td><input type='submit' name='book' value='book' onClick=\"whichForm('send_to_one', '{$row['phase']}', '{$row['site']}');\" /></td>"; 

/редактировать: изменять свой код, чтобы что-то вроде этого. Это не самое красивое решение для удобочитаемости, но оно должно работать.

<?php 
    $phase=$_GET["q"]; 
    $sql ="select id, phase,size, facing, sply, status from plot where status='avail' and phase='$phase'"; 
    $ret=mysql_query($sql, $connect); 

    echo"<div style='overflow-y:scroll;height:200px;float:left;' ><table border=1 > 
    <tr> 
    <td>select </td><td>phase</td> <td>site no.</td> <td>plot-size</td> <td>face</td> <td>sply</td> <td>status</td> 
    </tr>" ; 
    while($row = mysql_fetch_array($ret, MYSQL_ASSOC)) 
    { 

     echo "<tr>". 
      "<form action='restricted.php' method='post'>". 
      "<td><input type='submit' name='book' value='book' onClick=\"whichForm('send_to_one');\" /></td>". 
      "<td><input type='text' value=\"{$row['phase']}\" name='phase' size='3' readonly /> </td>". 
      "<td><input type='text' value=\"{$row['id']}\" name='site' size='4' readonly /></td>". 
      "<td> {$row['size']} </td>". 
      "<td> {$row['facing']} </td>". 
      "<td>{$row['sply']} </td> ". 
      "<td>{$row['status']} </td> ". 
      "<input type='hidden' name='phase' value='{$row['phase']}'>". 
      "<input type='hidden' name='site' value='{$row['site']}'>". 
      "</form>". 
      "</tr>"; 

    } 
    echo "</table></div>"; 

    mysql_close($connect); 

    ?> 

В вашем restricted.php вы можете получить доступ к значениям с:

$_POST['site']; 
$_POST['phase']; 
+0

Ivo Geersen, как мне получить доступ к этой фазе и значениям сайта, которые будут помещены в другую форму. – user957309

+0

Я не совсем понимаю ваш вопрос, но вы хотите перейти в другую форму, когда вы нажимаете на книгу? Это можно сделать несколькими способами. Если вы хотите работать с существующей функцией (whichForm()), вам нужно открыть эту форму с помощью javascript, и вы можете передать переменные в URL. Лучше было бы создать форму для каждой строки, поместить фазу и сайт в скрытые поля в каждой строке и получить их из $ _POST в вашем ограничении.php (btw, pick form method = post then) –

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