Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Скриптовые языки программирования > PHP
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 12.10.2009, 23:48   #1
Mal4ishnik
Новичок
Джуниор
 
Регистрация: 12.10.2009
Сообщений: 2
По умолчанию printf выводит только два %s(строки)

Возникла такая проблема, не могу разобраться в чем ошибка. Есть простой код
PHP код:
<?php
$result 
mysql_query("SELECT title,description,date FROM services",$db);
$myrow mysql_fetch_array($result);
do {
printf "<h2>[B]%s[/B]</h2>
        [B]%s[/B]
        <div class='line'></div>
        <table width='100%' align='center'>
        <tr>
        <td align='left'><p><a href='uslugi.php'>Читать полностью</a></p></td>
        <td align='right'><p class='publicdate'>Опубликовано | [B]%s[/B]</p></td>
        </tr>
        </table>
        <br>"
$myrow["title"], $myrow["description"], $myrow["date"]);
}
while (
$myrow mysql_fetch_array($result));
?>
Вот только работает он на практике только когда я пишу только два %s(выводит только две строки $myrow["title"] и $myrow["description"]). Если ставить три %s - ошибка Warning: printf() [function.printf]: Too few arguments in Z:\home\localhost\*** on line **. Вот работающий пример:

PHP код:
<?php
$result 
mysql_query("SELECT title,description,date FROM services",$db);
$myrow mysql_fetch_array($result);
do {
printf "<h2>[B]%s[/B]</h2>
        [B]%s[/B]
        <div class='line'></div>
        <table width='100%' align='center'>
        <tr>
        <td align='left'><p><a href='uslugi.php'>Читать полностью</a></p></td>
        <td align='right'><p class='publicdate'>Опубликовано |</p></td>
        </tr>
        </table>
        <br>"
$myrow["title"], $myrow["description"], $myrow["date"]);
}
while (
$myrow mysql_fetch_array($result));
?>
Если заменить $myrow["description"] на $myrow["date"] выводит последнее, тоесть с пременной пробл. нет.

Кто-нибудь сталкивался с такой проблемой? Есть решение? Спасибо.

Последний раз редактировалось Mal4ishnik; 13.10.2009 в 11:32.
Mal4ishnik вне форума Ответить с цитированием
Старый 13.10.2009, 00:01   #2
Mal4ishnik
Новичок
Джуниор
 
Регистрация: 12.10.2009
Сообщений: 2
По умолчанию

И почему решение всегда приходит, только после того как публикуешь топик на форуме. Проблема была в "100%". php воспринимал % как часть оператора printf и выдавал ошибку. Если % убрать - ошибка пропадает.
Mal4ishnik вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Код выводит пустые строки fs444 Общие вопросы C/C++ 7 20.08.2009 16:01
passthru выводит только одну строку motorway PHP 5 07.07.2009 21:27
Как отобразить в Мemo только некоторые строки из файла Norton Общие вопросы Delphi 3 21.03.2009 15:01
Из заданной символьной строки, выбрать те символы, которые встречаются в ней только один раз... Banny Паскаль, Turbo Pascal, PascalABC.NET 3 19.12.2008 06:15
дано два файла. получить третий,содержащий поочередно строки исходных двух файлов. HyvAchoK Паскаль, Turbo Pascal, PascalABC.NET 1 18.12.2008 10:51