|
|
|
|
<?php
if (!empty($myrow3 ['email'])) {
printf ("<p><span class='kp_main'>E-mail:</span> <a href='mailto:%s'>%s</a></p>",
$myrow3["email"], $myrow3["email"]);
}
if (!empty($myrow3 ['email2'])) {
printf ("<p><span class='kp_main'>Дополнительный e-mail:</span> %s</p>",
$myrow3["email2"]);
}
?>
|
выводится в 2 строки.
а как вывести в одну строку? kastcoleg@mail.ru , forumkast@mail.ru
с проверкой на существование?
Заодно уж напишите, плиз, правильно ли оформлен код. | |
|
|
|
|
|
|
|
для: liberty
(23.05.2013 в 06:23)
| | Есть два стиля написания конструкций, первый, это скобки конструкции пишут после объявления конструкции с отступом, причем открывающая и закрывающая скобки располагаются с одинаковым отступом (в одной колонке), а тело конструкции с отступом в этих скобках: На мой "вкус" такой стиль с "дырами" и не экономичен. )
Мне нравится стиль java, так как вы и пишите, но только закрывающую скобку нужно писать по краю объявления конструкции:Иначе при сложной структуре конструкции не видно "что" закрывает конструкцию:
<?
//это плохо
if($a) {
print $a;
}
else exit;
//это хорошо
if($a) {
print $a;
} else {
if($b) {
$n++; $k++;
}
}
|
Выше просто примеры, но если конструкция содержит одно выражение, то заключать ее в скобки не обязательно, и даже излишне.
Можно написать if(), а можно if (), но вот "отрывать" от имени массива его ключ, так этого не стоит делать - $array['key'], а не $array ['key'].
В одну строку - так это зависит от того с чем вы работаете - массив, значит есть функции пересечения массивов, обрабатываете в цикле ресурс, значит запоминайте с последующим выводом, если только ваши переменные при этом принадлежат разным записям, иначе и условие должно быть иное, и просто объединение. | |
|
|
|
|
|
|
|
для: confirm
(23.05.2013 в 08:09)
| | ну цикл там ник чему.
там два разных поля.
не знаю как объединить. | |
|
|
|
|
|
|
|
для: liberty
(24.05.2013 в 07:43)
| | Вы понимаете о чем я пишу или нет?
А написал я буквально следующее:
а) если это обработка в цикле mysql-ресурса, и эти проверяемые поля принадлежат разным записям (что это означает?), то нужно запоминать результат проверки с последующим объединением (как объединяются строки в РНР?);
б) если это обработка в цикле mysql-ресурса, и эти проверяемые поля принадлежат одной записи (что это означает?), то условие проверки должно быть иным (каким, если учитывать что пустые строки не должны помещаться в базу, а пустая строка возвращает false?) и сразу следует объединение (как объединяются строки в РНР?) двух переменных в одной строке. | |
|
|
|
|
|
|
|
для: liberty
(23.05.2013 в 06:23)
| |
<?php
$output = '<p><span class="kp_main">E-mail:</span> ';
if (isset($myrow3 ['email'])) $mail1 = $myrow3 ['email'];
if (isset($myrow3 ['email2'])) $mail2 = $myrow3 ['email2'];
$output .= $mail1 ? ('<a href="mailto:'. $mail1 .'">'. $mail1 .'</a>') : '';
$output .= $mail2 ? ( ($mail1 ? ', ' : '') . '<a href="mailto:'. $mail2 .'">'. $mail2 .'</a>') : '';
if (!$mail1 && !$mail2) $output .= 'нет';
$output .= '</p>';
echo $output;
?>
|
empty лучше не использовать - в php 5.3 и 5.4 ведет себя по-разному. | |
|
|
|
|
|
|
|
для: DangerBay
(24.05.2013 в 10:30)
| | Что-то вы лишнего накарякали, даже пусть это и из формы пришло. | |
|
|
|
|
|
|
|
для: confirm
(24.05.2013 в 11:20)
| | так что имеено лишнее.
давайте сравним ваш вариант. | |
|
|
|
|
|
|
|
для: liberty
(24.05.2013 в 14:22)
| | А самому подумать? Вы на вопросы ответили? | |
|
|
|
|
|
|
|
для: liberty
(23.05.2013 в 06:23)
| | Вы же каждый раз новый параграф выводите <p> ... </p> - поэтому и перенос строк получается на странице | |
|
|
|
|
|
|
|
для: Lotanaen
(24.05.2013 в 14:26)
| | спасибо.
вот сделал
<?php
echo "<p>";
if (!empty($myrow3 ['email'])) {
printf ("<span class='kp_main'>E-mail:</span> <a href='mailto:%s'>%s</a>",
$myrow3["email"], $myrow3["email"]);}
if (!empty($myrow3 ['email2'])) {
printf ("<span class='kp_main'>, </span><a href='mailto:%s'>%s</a>",
$myrow3["email2"], $myrow3["email2"]);}
echo "</p>";
?>
|
| |
|
|
|
|
|
|
|
для: liberty
(23.05.2013 в 06:23)
| | Вам для начала надо html подучить | |
|
|
|