Как выполнить оператор if в echo

DV

Guest
Так как лучше - держать вакансии и резюме в разных таблицах или объединить в одну?
 

Фанат

oncle terrible
Команда форума
этот вопрос к предыдущим не имеет отношения.
и информации для него недостаточно.
и вообще он к базам данных относится, а не к пхп
 

DV

Guest
тебе надо научиться мыслить абстрактно.
ТЫ НЕ ЭХО ДЕЛАЕШЬ!
И НЕ АПДЕЙТ!!
Как не Эхо...спомощью эхи я вывожу строки таблицы, которые нужны...а в этих строках содержаться пункты с выборкой, вот в этих выборках нужно помечать селектом нужный пункт, чтобы я видел, что указал пользователь, когда заполнял анкету....вот отсюда и появляются условия внутри эхи...
 

Фанат

oncle terrible
Команда форума
господи.
родной.

ты можешь понять, что тебе не обязательно выводить все ОДНИМ эхом?

ты можешь понять, что не обязательно выводить эхом строки в кавычках, а можно сначала составить переменную, а потом вывести ее?

ты можешь понять, что хтмл можно выводить в пхп ВООБЩЕ БЕЗ ЭХА?

 

DV

Guest
Эхо выводит СТРОКИ
и запрос апдейт - это СТРОКА.
Я могу сделать так?? :

if($vakansiya) {$имя_таблицы = vakansiya;}
else {$имя_таблицы = rezume;}

update имя_таблицы set
поле1 = ".$значение.",
поле2 = ".$значение.",
if ($vakansiya) {echo " поле3 = ".$значение.",";}
и т.д.


---
Чую меня сейчас закидают гнилыми помидорами.
;)
 

Фанат

oncle terrible
Команда форума
ты можешь понять, что тебе не обязательно выводить все ОДНИМ эхом?
все же просто.
сначала выводишь все, что до условия.
потом, по условию.
потом, все, что после

ТОЧНО ТАКЖЕ составляешь запрос в базу.

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

-~{}~ 05.05.04 13:00:

Я могу сделать так?? :
можешь,но только соблюдая синтаксис пхп.
Я ЖЕ ТЕБЕ НАПИСАЛ его выше.

-~{}~ 05.05.04 13:00:

Чую меня сейчас закидают гнилыми помидорами.
никто тебя закидывать не будет.
но вот БАЗОВЫЙ синтаксис пхп выучить придется.
 

DV

Guest
if($vakansiya) {$имя_таблицы = vakansiya;
q = "поле1 = $значение,";
q. = "поле2 = $значение,";
}
else {$имя_таблицы = rezume;}

update имя_таблицы set
поле1 = ".$значение.",
поле2 = ".$значение.",
if ($vakansiya) {echo "$q";}
и т.д.

----
если написал полную ерунду - удалить.:D

Ну не могу я учить это по книжкам, там всё шаблонно описано, а если что непонятно...у кого спрашивать...:(
 

Three Daws

Guest
Фанат я правильно понимаю, что о шаблонах лучше не заикаться и в FAQ (приравненном тут к высшей истанции, если не читал - не человек) не сказано, что смешивание PHP и HTML кода есть зло непоправимое, ибо провокация ходячая, да?

Все же я всегда полагал, что пути разработчиков языка и его пользователей сильно разошлись. Все же ребята из Zend явно не впиливают, что вот эта вот страсть написать:
PHP:
<?php
?>
Hello, World!
<?php
?>
явно неистребима и все еще пропагандируется как плюс быстрого освоения языка...

автору
подумайте в такую сторону:
PHP:
  $tmp = "<select name=\"mySelect\">";
  foreach( $array as $k => $v ) {
    $tmp .= "<option value=\"$k\"";
    if ( $k != $current ) {
      $tmp.=">";
    } else {
      $tmp.=" selected>";
    }
    $tmp.=$v."</option>\n";
  }
  $tmp .= "</select>";
И ведь можно потом вывести $tmp через ЭХО или ПРИНТ, ага?
 

Фанат

oncle terrible
Команда форума
если написал полную ерунду - удалить
увы, придется :)
Ну не могу я учить это по книжкам
пойми - к тебе никаких претензий нет. пока.
по книжкам - не по книжкам, но научиться писать программы прридется.
то, что ты сейчас делаешь - это азбука программироавания.
таблица умножения.
и это надо знать.

изучать надо на простых примерах.
а ты начинаешь со сложного.

Итак.
1. надо себе ЧЕТКО представлять, что надо получить.
допустим, запросы вида
UPDATE vacancy SET deleted=1
UPDATE resume SET deleted=1
2. использовать работу со строками, собирая запрос в переменную
$q="UPDATE ";
if ($resume) $q = $q."resume"; else $q = $q."vacancy";
$q= $q."SET deleted=1";
3. ПРОВЕРИТЬ. Обязательно проверить - что получилось
var_dump($q);

Что в этом примере тебе непонятно?
ты можешь его сам дополнить?

Дима
можно тебя попросить не делать замечаний?
все эти умные слова - Зенд, шаблон - не для этого случая.
пример - СЛИШКОМ сложный.
 

Three Daws

Guest
хорошо, умолкаю. Не сердись.

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

DV

Guest
Итак.
1. надо себе ЧЕТКО представлять, что надо получить.
допустим, запросы вида
UPDATE vacancy SET deleted=1
UPDATE resume SET deleted=1
2. использовать работу со строками, собирая запрос в переменную
$q="UPDATE ";
Я буду комментировать:)
Присваиваем q update
if ($resume) $q = $q."resume"; else $q = $q."vacancy";
$q= $q."SET deleted=1";
После выполнения условий получаем в q update resume/vacansy set deleted=1?
А теперь вопрос: deleted – это что, то что апдейтим – поле таблицы?
И почему q = q."что-то", а не q .= "что-то"?
3. ПРОВЕРИТЬ. Обязательно проверить - что получилось
var_dump($q);
и что мы этим проверяем?
 

Фанат

oncle terrible
Команда форума
Я буду комментировать
отлично.
обратная связь нужна обязательно.
А теперь вопрос: deleted – это что, то что апдейтим – поле таблицы?
нет.
это неизменная часть запроса.
это АБСТРАКТНАЯ неизменная часть запроса
по совпадению - это поле.
И почему q = q."что-то", а не q .= "что-то"?
так нагляднее.
но если тебе знаком синтаксис .= то используй его
и что мы этим проверяем?
что все получилось так как мы ожидали!

тЫСЯЧИ посетителей этого форума приходят с вопросом, что у них не работает запрос, а проблема в том ,что запрос составлен не так, как они ожидали!
 

DV

Guest
нет.
это неизменная часть запроса.
это АБСТРАКТНАЯ неизменная часть запроса
по совпадению - это поле.
А что делать с изменяемой? :)

А что потом делать с этой q?
mysql_query("$q"); ?
 

Фанат

oncle terrible
Команда форума
в гнезде.
у тебя в примере есть изменяемая и не изменяемая части.
неужели ты в упор изменяемую не видишь?
 

Фанат

oncle terrible
Команда форума
я тебе привел два запроса, которые м ы получаем.
скажи мне,милый ребенок, UPDATE - есть в обоих запросах? или только в одном?
это значиит, изменяемая она, или нет?
 
Сверху