полная фигня. Потому как count($row['data']) ВСЕГДА равно 1 и цикл будет выполнен один раз. Так что смысла в нем никакого нет.
Как я понимаю, ты посылаешь запрос на удаленный сервер в формате xml. Получаешь ответ - тоже в формате xml. Из полученного ответа получаешь с помощью рег. выражений нужные данные и записываешь их в БД.
Так что конкретно не получается? Послать запрос и получить ответ? Тогда curl_errno() и curl_error() тебе в помощь
Если же проблема в том, что не получается извлечь нужные данные с помощью рег.выражений, то где xml, из которого нужно извлекать данные? Или ты думаешь, тут все ясновидящие и по регулярному выражению способны восстановить xml, из которого извлекаются данные?
И последнее. Извлекать данные из xml с помощью рег.выражений - не самая лучшая идея. В PHP есть много средств для работы с xml:
Понимаете, я такой человек, который хочет понять, а не просто получить готовое решение. Можете парай слов объяснить как это работает, что за механизм используется? Не откажусь от небольшого комментария к каждой строке по ветке 'then' Естественно, кроме первой...
Например, возникла такая задача. Есть файл http://my-site.ru/files/file.rar, юзер набирает в браузере этот адрес, а мне нужно сделать, чтобы загрузка НЕ произошла, а пользователь мог получить данный файл ТОЛЬКО если, скажем, введёт пароль с определённой стрнаицы с формой.
echo'Скачивать файлы могут только зарегистрированные пользователи';
}
Чтобы файл archive.rar нельзя было скачать напрямую, надо защитить директорию
/downloads/files/
с помощью .htaccess, поместив в него строку
Deny from all
Такой вопрос: предположим, у меня есть карта, разделенная на локации. Каждая локация имеет свое название, описание, id и ссылки на другие локации. По этим самым локациям можно гулять.
Что мне лучше использовать для хранения этих самых локаций: xml файл или хранить все это в базе данных?
Вопрос филосовский - где лучше хранить информацию - в БД или файлах. Я предпочитаю БД. Кто-то другой - файлы.
Так, а кто нам мешает разместить на странице с сообщением "Спасибо за покупку" ссылку "Версия для печати"? Переменная сесии, где хранится ID заказа ( $_SESSION['orderID'] ) у нас уже удалена. А она нам понадобиться для того чтобы сформировать счет-фактуру. Может быть, нам понадобятся и еще кое-какая информация о покупателе (имя, телефон, e-mail). Но ведь перед удалением переменной сесии, где хранится ID заказа, мы можем ее сохранить в другой переменной сессии (и всю другую нужную нам информацию). Пусть, для определенности, это будет $_SESSION['orderComplete']
В этом случае мы будем знать, что если переменная сессии $_SESSION['orderID'] не определена, но при этом определена другая переменная $_SESSION['orderComplete'] значит, покупатель оформил заказ, но может возникнуть необходимость предьявить ему "страницу для печать". И если он затребует эту страницу, то там мы и удалим переменную $_SESSION['orderComplete'] потому как нам она больше не нужна.
Погоди, для того, чтобы не дать пользователю еще раз сделать заказ (нажав кнопку "Назад" или "Refresh") ты должен делать редирект.
Т.е. пользователь заполнил форму и нажал кнопку "Оформить заказ". Обработчик формы проверяет, правильно ли заполнены поля формы. Если поля заполнены правильно, то мы делаем редирект на страницу, где выводим ему собщение "Спасибо за ваш заказ". Если форма заполнена неправильно, мы должны повторно предъявить ему форму, уже заполненную введенными пользователем данными (не заставлять же его еще раз заполнять форму?) и сообщением об ошибке. Сообщение об ошибке должно содержать описание того, какие обязательные поля не заполнены или заполнены неправильно. При этом все заполненные пользователем поля и сообщение об ошибке мы сохраняем в сессии. После повторного предъявления формы с сообщением об ошибке мы удаляем переменные сессии.
Более подробно о том, как правильно обработать форму, можно почитать здесь Обработка ошибочного заполнения формы
В твоем случае, если форма заполнена правильно, страница success.php удаляет заказ пользователя из сессии или таблицы БД (я не знаю, где храниться корзина) и выдает сообщение "Спасибо за ваш заказ". При этом, если был выбран безналичный рассчет (а об этом ты узнаешь из массива $_SESSION['success']) выдаешь это сообщение на чистой странице (для печати) и ниже - счет-фактуру и пр.
то была какаято функция которая <\"> превращала бы в <">
Не совсем понял, что ты хотел сказать. Обратные слэши появляются если в php.ini выставлено
magic_quotes_gpc = On
С этим можно бороться так
if ( get_magic_quotes_gpc() ) $_POST['name'] = stripslashes( $_POST['name'] );
Подробности здесь Как отменить магическое действие magic quotes?
Волк пишет:
должна быть какая то другаю функция которая " превратить в <">.
Но, вообще, это не лучшая идея -- сперва преобразовать символы в соответствующие HTML сущности, а потом наоборот - преобразовать HTML сущности в соответствующие символы. Надо найти то место в скриптах, где выполняется второе (лишнее) преобразование, и отменить его.