Перейти к содержимому


Представление


Сообщений в теме: 10

#1 mahmud

    Активный участник

  • Пользователи
  • PipPipPip
  • 67 сообщений

Отправлено 07 Ноябрь 2012 - 08:55

Добрый день уважаемые программисты,

Очень нужен Ваш совет по реализации:

Есть форма : http://s2.uploads.ru/2CyLe.jpg

При нажатии на кнопку в "Предыдущий" - вывести данные из определенной поля таблицы в textfield.

SQL выборка:

$sqlQuery = "SELECT * FROM ".DATA_TABLE."99";
$result = mysql_query($sqlQuery) or die(mysql_error());
$row = mysql_fetch_array($result);


$text = $row['name'];

Таблица:

<table width="1187" border="0">
<tr>
<td width="85">&nbsp;</td>
<td width="123"><input type="submit" name="Submit" value="Предыдущий"></td>
<td width="132"><form name="form2" method="post" action="">
<input type="submit" name="Submit2" value="Следуйщий">
</form> </td>
<td width="102"><form name="form3" method="post" action="">
</form> </td>
<td width="135"><input type="submit" name="Submit4" value="Удалить"></td>
<td width="279">&nbsp;</td>
<td width="54">&nbsp;</td>
<td width="225">&nbsp;</td>
</tr>
</table>
<table width="612" border="0">
<tr>
<td><input name="textfield" type="text" size="100"></td>
</tr>
</table>
<table width="1189" height="344" border="1">
<tr>
<td>
</td>
</tr>
</table>


Прошу Вашего совета

Сообщение отредактировал mahmud: 07 Ноябрь 2012 - 09:05


#2 Гость_Roman_*

  • Гости

Отправлено 07 Ноябрь 2012 - 10:03

$sqlQuery = "SELECT * FROM ".DATA_TABLE."99";
$result = mysql_query($sqlQuery) or die(mysql_error());
$row = mysql_fetch_array($result);
$text = $row['name'];
$smarty -> assign("text", $text);
В отображении представления переменная выводится в любом месте в виде {$text}. Например:
<input name="textfield" type="text" size="100" value="{$text}">
В поле ввода появится значение переменной $text. Документация по работе с шаблонизатором Smarty.

#3 mahmud

    Активный участник

  • Пользователи
  • PipPipPip
  • 67 сообщений

Отправлено 07 Ноябрь 2012 - 12:31

Просмотр сообщенияRoman (07 Ноябрь 2012 - 10:03) писал:

$sqlQuery = "SELECT * FROM ".DATA_TABLE."99";
$result = mysql_query($sqlQuery) or die(mysql_error());
$row = mysql_fetch_array($result);
$text = $row['name'];
$smarty -> assign("text", $text);
В отображении представления переменная выводится в любом месте в виде {$text}. Например:
<input name="textfield" type="text" size="100" value="{$text}">
В поле ввода появится значение переменной $text. Документация по работе с шаблонизатором Smarty.

Спасибо огромное Роман, можно еще один вопрос, а как сделать так чтоб после нажатии на кнопку этот запрос срабатывал, очень прошу ответить

Также assign("text", $text); - работает но не берет всю строку НАПРИМЕР: text text он берет только text

Сообщение отредактировал mahmud: 07 Ноябрь 2012 - 14:30


#4 Гость_Roman_*

  • Гости

Отправлено 08 Ноябрь 2012 - 08:06

Срабатываение запроса по кнопке "Предыдущий":
if ($_POST['Submit'])
  {
    // Запрос
  }
Если строка в переменной Smarty выодится не вся, то и в переменной PHP она была такой. Метод assign просто передаёт значение переменной PHP в шаблон Smarty.

#5 mahmud

    Активный участник

  • Пользователи
  • PipPipPip
  • 67 сообщений

Отправлено 08 Ноябрь 2012 - 08:39

Просмотр сообщенияRoman (08 Ноябрь 2012 - 08:06) писал:

Срабатываение запроса по кнопке "Предыдущий":
if ($_POST['Submit'])
  {
	// Запрос
  }
Если строка в переменной Smarty выодится не вся, то и в переменной PHP она была такой. Метод assign просто передаёт значение переменной PHP в шаблон Smarty.

Еще один вопрос:

function getElements(){
document.getElementById('i_fr').src=

"http://nova.rambler.ru/search?btnG=%D0%9D%D0%B0%D0%B9%D1%82%D0%B8!&query= {$dial}";
}


тут {$dial} - переменная smarty у меня этого значения не берет

Как написать правильно в javascript чтоб работала?
Заранее спасибо !

Сообщение отредактировал mahmud: 08 Ноябрь 2012 - 08:39


#6 Гость_Roman_*

  • Гости

Отправлено 08 Ноябрь 2012 - 09:22

А как Вы передаёте значение этой переменной в шаблон? Ну и пробел перед вставкой переменной лишний.

#7 mahmud

    Активный участник

  • Пользователи
  • PipPipPip
  • 67 сообщений

Отправлено 08 Ноябрь 2012 - 09:39

Просмотр сообщенияRoman (08 Ноябрь 2012 - 09:22) писал:

А как Вы передаёте значение этой переменной в шаблон? Ну и пробел перед вставкой переменной лишний.

Подготовка данных:

[size=3][font=courier new,courier,monospace]$sqlQuery = "SELECT f1435 FROM ".DATA_TABLE."117 WHERE id=2";
$result = mysql_query($sqlQuery) or die(mysql_error());
$row = mysql_fetch_array($result);

$sqlQuery1 = "SELECT f1435 FROM ".DATA_TABLE."117 WHERE id=4 ";
$result1 = mysql_query($sqlQuery1) or die(mysql_error());
$row1 = mysql_fetch_array($result1);

$diag = $row['f1435'];
$next = $row1['f1435'];

$smarty -> assign("diag", $diag);
$smarty -> assign("next", $next);[/font][/size]

Отображение:

[size=3][font=courier new,courier,monospace]<script type="text/javascript">
function getURL(){
    document.getElementById('i_fr').src ="http://nova.rambler.ru/search?btnG=%D0%9D%D0%B0%D0%B9%D1%82%D0%B8!&query={$dial}";
}
</script>

<table width="1187" border="0">
  <tr>
    <td width="85"></td>
    <td width="123"><input id="pr" type="button" name="previous" value="Предыдущий" onclick="getURL()"></td>
    <td width="132"><form name="form2" method="post" action="">
	  <input id="nx" type="submit" name="next" value="Следующий">     
    </form>    </td>
    <td width="102"><form name="form3" method="post">
    </form>    </td>
    <td width="135"><input type="button" name="delete" value="Удалить"></td>
    <td width="279"></td>
    <td width="54"></td>
    <td width="225"></td>
  </tr>
</table>
<table width="612" border="0">
  <tr>
    <td><input id="val1" name="queryTxt" type="text" size="100" ></td>
  </tr>
</table>
<table width="1189" height="344" border="1">
  <tr>
    <td>
		  <iframe src=http://nova.rambler.ru/search?btnG=%D0%9D%D0%B0%D0%B9%D1%82%D0%B8!&query={$next}
		  frameborder="0" scrolling=no width= "1200" id="i_fr" marginheight=0 marginwidth=0 style="height: 500px"></iframe>
    </td>
  </tr>
</table>[/font][/size]

У меня в {$dial} - значение не берет, вставил таким образом {literal}{$dial}{/literal} берет как есть

#8 Гость_Roman_*

  • Гости

Отправлено 08 Ноябрь 2012 - 10:31

У Вас в подготовке данных переменная имеет имя "diag", а в отображении "dial".

#9 mahmud

    Активный участник

  • Пользователи
  • PipPipPip
  • 67 сообщений

Отправлено 08 Ноябрь 2012 - 10:51

Просмотр сообщенияRoman (08 Ноябрь 2012 - 10:31) писал:

У Вас в подготовке данных переменная имеет имя "diag", а в отображении "dial".

Да я неправильно написал, все равно у меня значение не берет, вы можете написать как правильно написать?

#10 Гость_Roman_*

  • Гости

Отправлено 08 Ноябрь 2012 - 14:14

В конце кода представления введите
die($dial);
На белом экране должно отобразиться реальное значение переменной. Проверьте, получает ли эта переменная вообще какое-то значение.

#11 mahmud

    Активный участник

  • Пользователи
  • PipPipPip
  • 67 сообщений

Отправлено 08 Ноябрь 2012 - 16:26

Просмотр сообщенияRoman (08 Ноябрь 2012 - 14:14) писал:

В конце кода представления введите
die($dial);
На белом экране должно отобразиться реальное значение переменной. Проверьте, получает ли эта переменная вообще какое-то значение.

спасибо получилась





Количество пользователей, читающих эту тему: 1

0 пользователей, 1 гостей, 0 анонимных