Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: помогите настроить вывод
 
 автор: Dizels   (25.11.2007 в 13:21)   письмо автору
 
 

В форме у меня вот такой код:

<tr>
    <td width="110">Организационно-правовая форма:</td>
    <td>
<select name ='form'>
<option value=1>ЧП</option>
<option value=2>ООО</option>
<option value=3>ЗАО</option>
<option value=4>ОАО</option>
</select>
</td>
</tr>

Соответственно в БД записывается значение 1, 2, 3 или 4

При выводе значения необходимо чтобы оно обратно преобразовывалось в ЧП, ООО, ЗАО и т.д. подскажите как это сделать?

   
 
 автор: mihdan   (25.11.2007 в 13:26)   письмо автору
 
   для: Dizels   (25.11.2007 в 13:21)
 

Храните названия либо в той же таблице БД либо в массиве а потом в цикле стройте <select>

   
 
 автор: Dizels   (25.11.2007 в 13:56)   письмо автору
 
   для: mihdan   (25.11.2007 в 13:26)
 

А можно на примере?

Сейчас я вывожу примерно так:

$q = "SELECT * FROM enterprise WHERE id=".$_GET['id'];
if($ent = mysql_query($q))
{
while($e = mysql_fetch_array($ent))
{
....
организационно-правовая форма: ". $e['form'] ."
.....


Т.е. как составить условие, чтобы выводилось необходимое значение?

   
 
 автор: Dizels   (25.11.2007 в 18:01)   письмо автору
 
   для: Dizels   (25.11.2007 в 13:56)
 

?

   
 
 автор: morkovkin   (25.11.2007 в 18:16)   письмо автору
 
   для: Dizels   (25.11.2007 в 18:01)
 


<?
function Zamena($string) { 
$
= array('1','2','3','4');
$
= array('ЧП','ООО','ЗАО','ОАО');
$string str_replace($1,$2,$string); 
return(
$string); } 


$q "SELECT * FROM enterprise WHERE id=".$_GET['id']; 
if(
$ent mysql_query($q)) 

while(
$e mysql_fetch_array($ent)) 

.... 
организационно-правовая формаZamena('$e['form']'); 

?>

   
 
 автор: Dizels   (25.11.2007 в 18:57)   письмо автору
 
   для: morkovkin   (25.11.2007 в 18:16)
 

morkovkin, спасибо, но вот при вставке кода в файл выдает ошибку:

Parse error: parse error, unexpected T_LNUMBER, expecting T_VARIABLE or '$' in z:\home\localhost\www\enterprises\index.php on line 126

126 линия:

$1 = array('1','2','3','4'); 


А вот так все вместе выглядит:

else
{

function Zamena($string) {  
$1 = array('1','2','3','4'); 
$2 = array('ЧП','ООО','ЗАО','ОАО'); 
$string = str_replace($1,$2,$string);  
return($string); } 

    // Выводим список предприятий
    $q = "SELECT * FROM enterprise WHERE id=".$_GET['id'];
    if($ent = mysql_query($q))
    {
    while($e = mysql_fetch_array($ent))
        {
        echo" <table width=\"80%\" border=\"0\"><tr><td><h2>". $e['name'] ."</h2>
            основано: ". $e['create'] ." , организационно-правовая форма: ". Zamena('$e['form']');  ."<br>

   
 
 автор: retsoul   (25.11.2007 в 19:11)   письмо автору
 
   для: Dizels   (25.11.2007 в 18:57)
 

переменные в языках программирования обычно должны начинаться с буквы, а не с цифры, тем более, не состоять из одних цифры

   
 
 автор: Dizels   (25.11.2007 в 19:26)   письмо автору
 
   для: retsoul   (25.11.2007 в 19:11)
 

Теперь выдает ошибку:

Parse error: parse error, unexpected T_STRING in z:\home\localhost\www\enterprises\index.php on line 138


Вот как сейчас все выглядит:

function Zamena($string) {  
$a = array('1','2','3','4'); 
$b = array('ЧП','ООО','ЗАО','ОАО'); 
$string = str_replace($a,$b,$string);  
return($string); } 

    // Выводим список предприятий
    $q = "SELECT * FROM enterprise WHERE id=".$_GET['id'];
    if($ent = mysql_query($q))
    {
    while($e = mysql_fetch_array($ent))
        {
        echo " <table width=\"80%\" border=\"0\"><tr><td><h2>". $e['name'] ."</h2>
            основано: ". $e['create'] ." , организационно-правовая форма:". Zamena('$e['form']'); ."<br>

   
 
 автор: retsoul   (25.11.2007 в 19:32)   письмо автору
 
   для: Dizels   (25.11.2007 в 19:26)
 

как была перенесена строка:

echo " <table width=\"80%\" border=\"0\"><tr><td><h2>". $e['name'] ."</h2>
            основано: ". $e['create'] ." , организационно-правовая форма:". Zamena('$e['form']'); ."<br>

?
если был нажат ввод - то ошибка от этого, либо от того, что в после точки с запятой, в конце строки - вот это - ."<br>

   
 
 автор: Dizels   (25.11.2007 в 19:55)   письмо автору
 
   для: retsoul   (25.11.2007 в 19:32)
 

>если был нажат ввод - то ошибка от этого>как была перенесена строка:

чего-то я не понял как это?

> после точки с запятой, в конце строки - вот это - ."<br>
это и должно быть вроде)

Сейчас приведу полный код:

function Zamena($string) {  
$a = array('1','2','3','4'); 
$b = array('ЧП','ООО','ЗАО','ОАО'); 
$string = str_replace($a,$b,$string);  
return($string); } 

    // Выводим список предприятий
    $q = "SELECT * FROM enterprise WHERE id=".$_GET['id'];
    if($ent = mysql_query($q))
    {
    while($e = mysql_fetch_array($ent))
        {
        echo " <table width=\"80%\" border=\"0\"><tr><td><h2>". $e['name'] ."</h2>
            основано: ". $e['create'] ." , организационно-правовая форма:". Zamena('$e['form']'); ."<br>
            <p><b>Виды деятельности:</b> ". $e['activity'] ."</p>
             <p><b>Директор:</b> ". $e['leader'] ."<br>
                день рождения: ". $e['bithday_leader'] ."</p>
            <p><b>Дополнительная информация:</b>". $e['additionally'] ."</p>
            <p><b>Награды:". $e['rewards'] ."</b></p>
            <p><b>Контактная информация:</b><br>
                ". $e['sity'] .", ". $e['adress'] ."<br>
                телефон: ". $e['phone'] ."<br>
                факс: ". $e['fax'] ."<br>
                e-mail: ". $e['email'] ."<br>
                сайт: ". $e['site'] ."</p>
            </td></tr></table>";
        }
    }

   
 
 автор: morkovkin   (25.11.2007 в 19:58)   письмо автору
 
   для: Dizels   (25.11.2007 в 19:55)
 

Замените Zamena('$e['form']'); на Zamena($e['form']);

   
 
 автор: retsoul   (25.11.2007 в 20:00)   письмо автору
 
   для: Dizels   (25.11.2007 в 19:55)
 

значит точка с запятой вот тут --> Zamena('$e['form']'); лишняя:


echo " <table width=\"80%\" border=\"0\"><tr><td><h2>". $e['name'] ."</h2>
            основано: ". $e['create'] ." , организационно-правовая форма:". Zamena('$e['form']'); ."<br>


так как пхп считает, что вывод echo - завершён

и плюс(как сказано выше) :
Zamena('$e['form']') - тут лучше разные кавычки поставить соблюдая вложенность элементов или просто заменить переменную из массива на обычную переменную
$temp_per = $e['form'];
и вставлять эту переменную в функцию: Zamena("$temp_per")

   
 
 автор: morkovkin   (25.11.2007 в 19:46)   письмо автору
 
   для: Dizels   (25.11.2007 в 19:26)
 

А Вы при выводе предприятий, закрываете фигурные скобки?
138 строчка - это какая?

   
 
 автор: Dizels   (25.11.2007 в 19:59)   письмо автору
 
   для: morkovkin   (25.11.2007 в 19:46)
 

скобки вроде все закрываю
138 строчка:

основано: ". $e['create'] ." , организационно-правовая форма:". Zamena('$e['form']'); ."<br>

   
 
 автор: Dizels   (25.11.2007 в 20:04)   письмо автору
 
   для: Dizels   (25.11.2007 в 19:59)
 

Получилось, всем огромное спасибо.
Убрал в конце ;
а так же поменял Zamena('$e['form']'); на Zamena($e['form'])

   
 
 автор: morkovkin   (25.11.2007 в 20:15)   письмо автору
 
   для: Dizels   (25.11.2007 в 20:04)
 

Уф :)

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования