PHP . SU
Программирование на PHP, MySQL и другие веб-технологии
Страниц (5): [1] 2 3 4 5 »
Найдено сообщений: 71
twelveee
Отправлено: 29 Июня, 2015 - 14:49:28 • Тема: While в while (Вывод городов и стран) • Форум: Вопросы новичков
Ответов: 2 Просмотров: 181
Alex1984 пишет: Не совсем про города но смысл тот же
array1 = SELECT 'id', 'name' ,'categories', 'parent' FROM 'navigation' WHERE 'parent=0'
array2 = SELECT 'id', 'name' ,'categories', 'parent' FROM 'navigation' WHERE 'parent>0'
PHP:
скопировать код в буфер обмена
$cat = array1;
$sub_cat = array2;
foreach ( $cat as $tmp )
{
array_push ( $tmp_arr , '<li> <a href="/' . $tmp [ 2 ] . '">' . $tmp [ 1 ] . '</a>' ) ;
foreach ( $sub_cat as $tmp1 )
{
if ( $tmp [ 0] == $tmp1 [ 3] )
{
array_push ( $tmp_arr , '<li> <a href="' . $tmp [ 2 ] . '/' . $tmp1 [ 2 ] . '">' . $tmp1 [ 1 ] . '</a>' ) ; }
}
}
Огромное спасибо!
CODE (
htmlphp ):
скопировать код в буфер обмена
$cat = $db->query("SELECT * FROM ".PREFIX."_shop_cities WHERE type='0'");
$sub_cat = $db->query("SELECT * FROM ".PREFIX."_shop_cities WHERE type='1'");
$sub_sub_cat = $db->query("SELECT * FROM ".PREFIX."_shop_cities WHERE type='2'");
$tmp_arr = array();
foreach($cat as $tmp)
{
array_push($tmp_arr, "< h3> ".$tmp["name_ru"]."</ h3>< hr> ");
foreach($sub_cat as $tmp1)
{
if($tmp["id"] == $tmp1["god"])
{
array_push($tmp_arr, '< b> ' . $tmp1["name_ru"] . '</ b>< br> ');
foreach($sub_sub_cat as $tmp2)
{
if($tmp1["id"] == $tmp2["god"])
{
array_push($tmp_arr, ' < a href= "' . $tmp[2] . '/' . $tmp1[2] . '" > ' . $tmp2["name_ru"] . '</ a>< br> ');
}
}
}
}
}
$res = implode(' ', $tmp_arr);
Потом просто $res в тег записывать, через шаблонизатор и готово!
twelveee
Отправлено: 28 Июня, 2015 - 15:46:19 • Тема: While в while (Вывод городов и стран) • Форум: Вопросы новичков
Ответов: 2 Просмотров: 181
CODE (
htmlphp ):
скопировать код в буфер обмена
$get_all = $db->query("SELECT * FROM ".PREFIX."_shop_cities WHERE type='0'"); # Берем страны
while($row = $db->get_row($get_all)){
$get_regions = $db->query("SELECT * FROM ".PREFIX."_shop_cities WHERE god='$row[id]' AND type='1'"); # Регионы
while($row2 = $db->get_row($get_regions)){
$get_cities = $db->query("SELECT * FROM ".PREFIX."_shop_cities WHERE god='$row2[id]' AND type='2'"); # города
while($row3 = $db->get_row($get_cities)){
$tpl->load_template("eshop/citylist.tpl");
$tpl->set("{city_name}", "< li> ".$row3["name_ru"]."</ li> ");
$tpl->compile("cities");
$tpl->clear();
}
$tpl->load_template("eshop/regionslist.tpl");
$tpl->set("{region_name}", $row2["name_ru"]);
$tpl->set("{cities}", $tpl->result["cities"]);
$tpl->compile("regions");
$tpl->clear();
}
$tpl->load_template("eshop/countrylist.tpl");
$tpl->set("{name_country}", $row["name_ru"]);
$tpl->set("{regions}", $tpl->result["regions"]);
$tpl->compile("citylist");
$tpl->clear();
}
Выводит что то типа:
Россия
Московская область
Москва
Новосибирская Область
Москва
Новосибирск
А нужен вывод для каждой области отдельные города
twelveee
Отправлено: 07 Июня, 2015 - 08:20:44 • Тема: Двойной $_POST • Форум: Программирование на PHP
Ответов: 10 Просмотров: 686
Решил проблему при помощи моего лога..
Проблема была в serialize от js
Была просто еще 1 форма, про которую я забыл..
И она сериализовала и эту форму тоже.
Просто поставил селектор другой, по id формы и готово!)
Спасибо за советы
twelveee
Отправлено: 06 Июня, 2015 - 11:06:45 • Тема: Двойной $_POST • Форум: Программирование на PHP
Ответов: 10 Просмотров: 686
Ts.Saltan пишет: twelveee пишет: приложение для хрома.
Зачем? Есть же встроенный инспектор (вроде ctrl+shift+i), вкладка network, покажет передаваемые данные в читабельном виде
Мало что изменилось)
CODE (
htmlphp ):
скопировать код в буфер обмена
domain:login_name=Twelvee&login_password=123456&login=submit&do=search&subaction=search&story=%D0%9F%D0%BE%D0%B8%D1%81%D0%BA...&domain=new_domain&domain=322.kz&tld_kz=on&tld_com.kz=on&tld_ru=on&tld_su=on&tld_com=on&tld_net=on&tld_org=on&tld_info=on&tld_biz=on&tld_name=on&domain=322.com.kz&domain=322.su&vote_action=results&vote_id=1&vote_check=0&vote_action=vote&vote_id=1&skin_name=Default&action_skin_change=yes
twelveee
Отправлено: 06 Июня, 2015 - 10:45:35 • Тема: Двойной $_POST • Форум: Программирование на PHP
Ответов: 10 Просмотров: 686
websniffer приложение для хрома.
Вот такой результат выдает:
CODE (
htmlphp ):
скопировать код в буфер обмена
login_name=Twelvee&login_password=asdasdasd&login=submit&do=search&subaction=search&story=%D0%9F%D0%BE%D0%B8%D1%81%D0%BA...&domain=new_domain&domain=322.kz&tld_kz=on&tld_com.kz=on&tld_ru=on&tld_su=on&tld_com=on&tld_net=on&tld_org=on&tld_info=on&tld_biz=on&tld_name=on&domain=322.com.kz&domain=322.su&vote_action=results&vote_id=1&vote_check=0&vote_action=vote&vote_id=1&skin_name=Default&action_skin_change=yes
twelveee
Отправлено: 06 Июня, 2015 - 10:21:38 • Тема: Двойной $_POST • Форум: Программирование на PHP
Ответов: 10 Просмотров: 686
Tyoma5891 пишет: как-то странно у Вас аякс записан
это должно быть вообще без скобок, и второй момент
я в форме html не увидел не одного упоминания со словом "form" что Вы сериализуете?
CODE (
html ):
скопировать код в буфер обмена
<form id = "whoisfrom" action = "" method = "post" >
<div id = "domain" >
<fieldset >
<legend > Зарегистрируй сейчас, пока свободно!</ legend >
<h2 style = "margin-left:10px;" ></ h2 >
<div class = "l1" > <center >
<span style = "font-size:12px;" > www.</ span >
<input type = "text" style = "width:75%;height:30px;padding-left:7px;" name = "domain" class = "w_input" placeholder= "Введите нужный домен" / > <input style = "width: 115px; height: 100%;margin-top:-1px; " value = "Проверить" onclick = "DoWhois(); return false;" class = "btn btn-default" type = "submit" >
<!---->
<p align = "left" style = "font-size:11px; margin-left:52%;" > (например: <em > mycompany</ em > или <em > моякомпания</ em > )</ p >
</ center >
</ div >
</ fieldset >
<br >
<div id = "log" ><div id = "log_res" align = "center" > {results}</ div ></ div >
</ div >
Мне нужна помощь. Уже очень долго не могу сделать этот скрипт. Возможен такой вариант:
Если пост уже есть, то он unset. Добавляется новый пост
twelveee
Отправлено: 06 Июня, 2015 - 09:48:27 • Тема: Двойной $_POST • Форум: Программирование на PHP
Ответов: 10 Просмотров: 686
ajax:
function DoWhois() {
ShowLoading('');
var domain = $('form').serialize();
$.post(dle_root + "engine/whois/ajax/whois.php", {domain},
function(domain){
$('#dle-whois-results').html(domain);
HideLoading('');
}
);
}
Форма:
CODE (
htmlphp ):
скопировать код в буфер обмена
< div id= "domain" >
< fieldset>
< legend> Зарегистрируй сейчас, пока свободно!</ legend>
< h2 style= "margin-left:10px;" ></ h2>
< div class= "l1" > < center>
< span style= "font-size:12px;" > www.</ span>
< input type= "text" style= "width:75%;height:30px;padding-left:7px;" name= "domain" class= "w_input" placeholder= "Введите нужный домен" /> < input style= "width: 115px; height: 100%;margin-top:-1px; " value= "Проверить" onclick= "DoWhois(); return false;" class= "btn btn-default" type= "submit" >
<!---->
< p align= "left" style= "font-size:11px; margin-left:52%;" > (например: < em> mycompany</ em> или < em> моякомпания</ em> )</ p>
</ center>
</ div>
</ fieldset>
< br>
< div id= "log" >< div id= "log_res" align= "center" > {results}</ div></ div>
</ div>
Тут дальше идут зоны (.ru, .kz, .su и т.д)
twelveee
Отправлено: 06 Июня, 2015 - 09:04:33 • Тема: Двойной $_POST • Форум: Программирование на PHP
Ответов: 10 Просмотров: 686
Здравствуйте, вопрос такой:
Есть ajax отправляющий POST запрос с формы. Ничего необычного.
Вот файл, куда он отправляет:
PHP:
скопировать код в буфер обмена
require_once ( ENGINE_DIR. "/whois/ajax/AjaxWhois.php" ) ;
$whois = new AjaxWhois( ) ;
$domainName = ( isset ( $donect [ "domain" ] ) ) ?
$donect [ "domain" ] : '' ; // Проверка не более 3-х символов в домене
$whois -> processAjaxWhois ( $donect ) ;
} else {
echo '<fieldset><legend>Внимание ошибка!</legend><h2 class="red">Вы указали слишком короткий домен. Домен должен составлять не менее 3-х символов</h2></fieldset>' ;
}
Вот файл AjaxWhois, точнее функция, processAjaxWhois
PHP:
скопировать код в буфер обмена
function processAjaxWhois( $donect ) {
$domainName = ( isset ( $donect [ 'domain' ] ) ) ?
$donect [ 'domain' ] : '' ;
// Удаление url'лов http://www. or www. or http://
{ $domainName = substr ( $domainName , 11
, strlen ( $domainName ) - 11
) ; } { $domainName = substr ( $domainName , 12
, strlen ( $domainName ) - 12
) ; } function delete( $str , $symbol = '' )
{
}
$domainName = delete( $domainName , '.' ) ;
// $domainName если есть, то удаляем
function pregtrim( $url ) {
}
for ( $i = 0 ; $i < sizeof ( $this -> serverList ) ; $i ++ ) { $actTop = "tld_" . $this -> serverList [ $i ] [ 'tld' ] ;
$this -> serverList [ $i ] [ 'check' ] = isset ( $donect [ $check ] ) ?
true : false ; }
if ( strlen ( $domainName ) > 2 AND
! empty ( $this -> serverList ) ) {
echo '<table class="tabel">' ;
echo '<div class="namedom2" style="padding-left:5px;padding-right:5px;"><h3>Результаты проверки</h3><span style="display:none;" class="rid"><a href="#">Отметить</a> / <a href="#">Снять отмечаные</a></span></div>' ;
echo '<tr><th colspan="2"></th></tr>' ;
for ( $i = 0 ; $i < sizeof ( $this -> serverList ) ; $i ++ ) { if ( $this -> serverList [ $i ] [ 'check' ] ) {
$result [ ] = $this -> showDomainResult ( $domainName . "." . $this -> serverList [ $i ] [ 'tld' ] ,
$this -> serverList [ $i ] [ 'server' ] ,
$this -> serverList [ $i ] [ 'response' ] ) ;
}
}
echo "<b>Ошибка!</b> Вы не выбрали ни одну доменную зону для проверки." ;
}
echo '</table>' ;
}
}
Первый раз, когда я ввожу домен, все нормально. Выводит результат по нужному домену.
Второй раз, уже с выведенным результатом тоже все нормально.
Но 3й раз, какой бы домен я не вводил, показывается результат #2.
Проверил POST запрос
Там 2 раза передается $_POST["domain"];
Причем оба раза, разные.
Первый - тот который мне нужен, а второй домен из результата 2.
Можно как нибудь убрать этот второй домен?
Результаты после 2й проверки как бы стакаются, чего происходить не должно.
twelveee
Отправлено: 09 Ноября, 2014 - 18:53:27 • Тема: Запись в постоянную переменную • Форум: Программирование на PHP
Ответов: 0 Просмотров: 139
Здравствуйте.
Задался таким вопросом. Точнее, столкнулся с проблемой..
Есть переменная, которая указана при определенном условии. НО!
Она мне нужна тогда, когда это условие не выполняется.
Вот код:
PHP:
скопировать код в буфер обмена
if ( isset ( $_POST [ 'next' ] ) ) { // Переделать структуру файла, if(){}else{}
$tpl -> load_template ( 'mod_buy.tpl' ) ;
$tpl -> compile ( 'content' ) ;
$tpl -> clear ( ) ;
foreach ( $_POST [ 'count' ] as $count => $value ) {
if ( $_POST [ 'count' ] [ $count ] > 0) {
$tpl -> load_template ( 'mod_buy2.tpl' ) ;
$price = $_POST [ 'price' ] [ $count ] ;
$tpl -> set ( '{buy_count}' , $_POST [ 'count' ] [ $count ] ) ;
$tpl -> set ( '{buy_name}' , $_POST [ 'name' ] [ $count ] ) ;
$tpl -> set ( '{buy_price}' , $price ) ;
$tpl -> set ( '{buy_price_full}' , $price * $_POST [ 'count' ] [ $count ] ) ;
$tpl -> compile ( 'content' ) ;
$tpl -> clear ( ) ;
}
}
$tpl -> load_template ( 'mod_buy3.tpl' ) ;
$tpl -> compile ( 'content' ) ;
$tpl -> clear ( ) ;
}
elseif ( isset ( $_POST [ 'submit' ] ) ) { echo $zakaz ;
foreach ( $_POST [ 'count' ] as $i ) {
$buy_count = $_POST [ 'count' ] [ $i ] ;
$buy_name_mail = $_POST [ 'count' ] [ $i ] ;
$fullprice = $price * $_POST [ 'count' ] [ $i ] ;
$email = $_POST [ 'email' ] ;
$zakaz = <<<HTML
Заказ:\n
/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\\n
= Товар: $buy_name_mail\n
= Кол-во: $buy_count\n
= Общаяя цена за товар: $fullprice\n
/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\
HTML ;
$message = <<<HTML
Данные заказа \n
--------------------------\n
Контактный Email: $email\n
Скайп: $skype\n
Ссылка на профиль стим: $steam\n
--------------------------\n
$zakaz
HTML ;
if ( isset ( $_POST [ 'email' ] ) AND
isset ( $_POST [ 'steam' ] ) AND
isset ( $_POST [ 'oplata' ] ) ) { msgbox( 'Усшпешно!' , 'Ожидайте, скоро Вам ответят по Email или Skype.' ) ;
mail ( 'test@gmail.com' , 'Новый заказ' , $message ) ; }
else {
msgbox( 'Ошибка' , 'Вы заполнили не все обязательные поля.' ) ;
}
}
}
}
Как уже можно понять, 2й foreach не работает. Потому что нет $_POST['count'] во 2й форме.
Нужна Ваша помощь. Необходим вывод этой переменной $zakaz во 2м условии..
twelveee
Отправлено: 08 Ноября, 2014 - 13:16:06 • Тема: Цикл вывода названий из списка • Форум: Программирование на PHP
Ответов: 0 Просмотров: 159
В общем. Нужно сделать http://chinabox[dot]com[dot]ua/main
корзину.
Я сделал примерно такое же, но никак не могу понять.
Мне нужны названия товаров, которых выбрано более 0.
То есть, после нажатия кнопки "Продать", открывался некий mod_buy.tpl в котором выводится список и количество товаров.
Как это можно осуществить?
Была такая попытка:
PHP:
скопировать код в буфер обмена
if ( isset ( $_POST [ 'submit' ] ) ) { $tpl -> global_clear ( ) ; // Переделать структуру файла, if(){}else{}
$tpl -> load_template ( 'mod_buy.tpl' ) ;
@ int( $_POST [ 'count' ] ) ;
while ( $_POST [ 'count' ] > 0) {
$tpl -> set ( '{buy_name}' , $_POST [ 'name' ] ) ;
}
$tpl -> compile ( 'content' ) ;
$tpl -> clear ( ) ;
}
Сам код написан под DLE (Datalife Engine)
(Добавление)
PHP:
скопировать код в буфер обмена
<?PHP
// Название товара
$_SESSION [ 'item' ] = $_POST [ 'item' ] ;
// Кол-во товара
$_SESSION [ 'count' ] = $_POST [ 'count' ] ;
// Цена товара
$_SESSION [ 'price' ] = 100 ;
echo "Вы добавили товар в карзину!<br/>" ;
echo "Его кол-во " . $_SESSION [ 'count' ] . "<br/>" ;
echo "Вы должны заплатить: " . $_SESSION [ 'count' ] * $_SESSION [ 'price' ] . " рублей<hr/>" ;
}
?>
Но с While)
twelveee
Отправлено: 20 Июля, 2014 - 08:30:02 • Тема: Редактирование конфиг-файла в php • Форум: Программирование на PHP
Ответов: 7 Просмотров: 933
Спасибо всем за ответы!
Решил проблему следующим образом:
CODE (
htmlphp ):
скопировать код в буфер обмена
if(isset($_POST['submit'])){
$template = '<? php
"title" => "%s " ,
"url" => "%s " ,
"config_url" => "%s "
) ;
?> ';
file_put_contents($_SERVER['DOCUMENT_ROOT']."/configs/config.php", sprintf($template, $_POST['title'], "templates", $_SERVER["DOCUMENT_ROOT"]."/configs", $_POST['template']));
}
twelveee
Отправлено: 17 Июля, 2014 - 19:10:14 • Тема: Редактирование конфиг-файла в php • Форум: Программирование на PHP
Ответов: 7 Просмотров: 933
Можно поподробнее про 2й вариант?
Насколько я понял,
нужно вставлять в скрипт редактирования, а var_export();
в самом конфиге. Так ли это?
и что нужно прописывать в var_export?
twelveee
Отправлено: 17 Июля, 2014 - 15:04:25 • Тема: Редактирование конфиг-файла в php • Форум: Программирование на PHP
Ответов: 7 Просмотров: 933
Спасибо за ответ, но это не совсем то, что нужно. В файле config.php не только этот массив.
А обновлять сразу много массивов, не очень правильно.
file_put_contents просто перезаписывает файл.
Мне же нужна перезапись только переменной. Это осуществимо?
Как вариант можно сделать при помощи mysql, но задача стоит именно файлом.
Страниц (5): [1] 2 3 4 5 »
Powered by ExBB FM 1.0 RC1. InvisionExBB