Увеличение ширины поля для ввода данных.

heliomaster

Новичок
День добрый.

Несколько слов о себе - полный чайник. Прошу помочь в том как увеличить ширину полей (в HTML это element) где выводятся данные из таблицы SQL. Благодарен всем кто откликнется и поможет в этой нелёгкой для меня задаче. :)

Код php-страницы следующий:

PHP:
<?php
require_once('lib/init.php');
require_once('lib/auth.php');
require_once('DB.php');
require("lib/sql.php");
check_access();
$db = DB::connect($g_dsn);
if (DB::isError($db)) {
  die($db->getMessage());
}
$subsection = $db->getRow($QR_SELECT_SUBSECTION, array($_GET['id']), DB_FETCHMODE_ASSOC );
if (DB::isError($subsection)) {
  die($subsection->getMessage());
}
// получаем данные подраздела
$subsection = array("hid_id"  => $subsection['id'],
  "txt_name"  => $subsection['name'],
  "hid_acceptor" => $subsection['acceptor'],
  "txt_login" => $subsection['login']
  );
require_once "HTML/QuickForm.php";
require_once "HTML/QuickForm/Renderer/ArraySmarty.php";
$form = new HTML_QuickForm('frmAddSlip', 'post');
$form->setDefaults($subsection);
$form->addElement('hidden','hid_id');
$form->addElement('text', 'txt_name', 'Название подраздела:');
$form->addElement('hidden','hid_acceptor');
$form->addElement('text', 'txt_login', 'Кто подписывает:');
$form->addElement('reset', 'btnReset', 'Очистить');
$form->addElement('submit', 'btnSubmit', 'Изменить');
$form->addRule('txt_name', "Это поле является обязательным", 'required');
$form->addRule('txt_login', "Это поле является обязательным", 'required');
$form->applyFilter('__ALL__', 'trim');
if ($form->validate()) {
  $form->process('process_data', false);
}
$smarty = new Smarty;
$renderer = new HTML_QuickForm_Renderer_ArraySmarty($smarty, true);
$renderer->setRequiredTemplate(
  '{if $error}
  <font color="red">{$label|upper}</font>
  {else}
  {$label}
  {if $required}
  <font color="red" size="1">*</font>
  {/if}
  {/if}'
  );
$renderer->setErrorTemplate(
  '{if $error}
  <font color="orange" size="1">{$error}</font><br />
  {/if}{$html}'
  );
$form->accept($renderer);
$smarty->assign('form_data', $renderer->toArray());
$smarty->assign("subsection", $data['subsection']);
$smarty->display("subsections/subsection_edit.tpl");
function process_data($values)
{
  require_once("DB.php");
  require('lib/sql.php');
  global $g_dsn;
 
  $db = DB::connect($g_dsn);
  if (DB::isError($db)) {
  die($db->getMessage());
  }
  $sth = $db->prepare($QR_UPDATE_SUBSECTION);
  $data = array(
  $_POST['txt_name'],
  $_POST['hid_id'],
  $_POST['txt_login']
  );
 
  $res = $db->execute($sth, $data);
  if (DB::isError($res)) { 
  die($res->getMessage());
  }
  header("Location: subsections.php");
}
?>
Код tpl-страницы следующий:

HTML:
{include file="header.tpl" title="AWS Cartoil" rubr="Товарные чеки"}
<br/>
  <div class="tablecaption">Редактирование подраздела</div>
<br/>
  <table>
    <tr>
      <td class="label">{$form_data.txt_name.label}</td>
      <td class="element">{$form_data.txt_name.html}</td>
      <td class="label">{$form_data.txt_login.label}</td>
      <td class="element">{$form_data.txt_login.html}</td>
    </tr>
  </table>
  <table width="500">
    <tr>
        <td><span style="font-size:80%; color:#ff0000;">*</span><span style="font-size:80%;"> обязательные поля</span></td>
        <td align="right">{$form_data.btnReset.html}&nbsp;{$form_data.btnSubmit.html}</td>
    </tr>
</table>
</form>
</div>

{include file="footer.tpl"}
 

c0dex

web.dev 2002-...
Команда форума
Партнер клуба
Поставь им style с свойством width: (сколько-то)px или (сколько-то)%, ну или напиши css класс и поставь класс этим элементам в tpl шаблоне
 

heliomaster

Новичок
А подробней как для чайника можно? Что и где нужно прописать? Так как пробовал я style со свойствами width прописать, не сработало. Может что не так делал поэтому и спрашиваю. О, особенно про второй способ.
 
Последнее редактирование:

c0dex

web.dev 2002-...
Команда форума
Партнер клуба
heliomaster, как пробовал? Код где?
<td class="element" style="width: тут ширина в px или %">{$form_data.txt_name.html}</td>
 

heliomaster

Новичок
Именно так и пробовал, у меня вместо увеличения ширины полей происходит их сдвиг. Вот и ломаю сижу голову что где не так, подозреваю, что проблема в QuickForms. Так как <input type="text" value="Поле из базы 1 (Поле из базы 2)" name="txt_name"></input> вообще не пойму откуда берётся, а в браузере через инспектор лисы этот блок есть и идёт он как раз чётко после блока element.
 

c0dex

web.dev 2002-...
Команда форума
Партнер клуба
heliomaster, ну тогда открывай дебаггер в хроме и пиши в нем, прямо в инспекторе нужный стиль, и смотри.
 

c0dex

web.dev 2002-...
Команда форума
Партнер клуба
Каким вторым способом?
 

Kotofey

FloodMaster.
HTML:
<style>
.largeInput{
width: 400px;
}
</style>
<input class="largeInput" name="..." value="1"/><br/>
<input class="largeInput" name="..." value="2"/><br/>
 

heliomaster

Новичок
Всем спасибо, нашёл самостоятельное решение. Учитывая, что весь сайт работает через ж... Pear-HTML, соответственно и о ответ был в нём, так и знал. В общем у кого возникнут подобные трудности там где текстовые поля для вывода полей из базы SQL нужно на примере моей php-страницы добавить следующее...

PHP:
$form->addElement('text', 'txt_name', 'Название подраздела:', array('style' => 'width: 300px'));

$form->addElement('text', 'txt_login', 'Кто подписывает:', array('style' => 'width: 300px'));
 
Сверху