<MyRusakov.ru />

Создание Интернет-магазина на OpenCart 2.0

Создание Интернет-магазина на OpenCart 2.0

Видеокурс "Создание Интернет-магазина на OpenCart 2.0" обучит Вас созданию любых Интернет-магазинов на OpenCart 2. В первом разделе курса разбираются абсолютно все возможности данного движка с примерами.

Во втором разделе создаётся полноценный Интернет-магазин, где Вы уже всё увидите своими глазами.

И, наконец, в третьем разделе курса созданный Интернет-магазин будет размещён в Интернете.

К курсу так же идут бесплатные и очень ценные Бонусы сопоставимые с самим курсом: "Как сэкономить на Яндекс.Директ до 50%", "Дропшиппинг" и "Как раскрутить Интернет-магазин".

Подробнее
Подписка

Подписавшись по E-mail, Вы будете получать уведомления о новых статьях.

Подписка Подписаться

Добавляйтесь ко мне в друзья ВКонтакте! Отзывы о сайте и обо мне оставляйте в моей группе.

Мой аккаунт Мой аккаунт Моя группа
Опрос

Каким движком Вы предпочитаете пользоваться?

Форум сайта MyRusakov.ru

Доска объявлений
16.12.2013 17:00:03 Доска объявлений Сообщение #1
iracwet

iracwet

Новичок

Новичок

Дата регистрации:
16.12.2013 16:42:43

Сообщений: 9

Добрый день, подскажите пожалуйста найти ошибку. При добавлении объявления у меня выводится сообщение Wrong captcha .
Код состоит из шаблона(add_mess.tpl.php),action(add_mess.php),functions.
Ниже приведу отрывок кода functions:
function add_mess($post,$user_id) {
$title = clear_str($post['title']);
$text = $post['text'];
$id_categories =(int)($post['id_categories']);
$id_razd =(int)($post['id_razd']);
$price =(int)($post['price']);
$town = clear_str($post['town']);
$date = time();
$a_time = (int)($post['time']);
$time_over = $date + ($a_time*(60*60*24));

$msg = '';

if(empty($_SESSION['str_cap']) ||$_SESSION['str_cap'] !== $post['capctha'] ){
$_SESSION['p']['title'] = $title;
$_SESSION['p']['text'] = $text;
$_SESSION['p']['town'] = $town;
$_SESSION['p']['price'] = $price;

return "Wrong captcha";

}
unset($_SESSION['str_cap']);

if(empty($title)) {
$msg = "Введите заголовок";

}
if(empty($text)) {
$msg = "Введите текст";

}
if(!empty($msg)) {
$_SESSION['p']['title'] = $title;
$_SESSION['p']['text'] = $text;
$_SESSION['p']['town'] = $town;
$_SESSION['p']['price'] = $price;
return $msg;
}

файл add_mess.php:
<?php

if(!$user || !can($user['id_role'],array("ADD_MESS")) {
$text = "Доступ запрещен";
$content = render(TEMPLATE."error.tpl",array("text"=>$text));
}
else {
if($_POST) {
$msg = add_mess($_POST,$user['user_id']);

if($msg === TRUE) {
$_SESSION['msg'] = "Успешно добавлено. Ожидает проверки модератора";
}
else {
$_SESSION['msg'] = $msg;
}

header("Location:".$_SERVER['PHP_SELF']);
exit();
}
$content = render(TEMPLATE."add_mess.tpl",array(
'categories'=>$categories,
'razd' => $razd
));
}

?>
файл add_mess.tpl.php:
<h2>Новое объявление</h2>
<form method='POST' enctype="multipart/form-data">
Тема:<br>
<input type='text' name='title' value="<?=$_SESSION['p']['title'];?>">
<br>
Текст:<br>
<textarea name="text"><?=$_SESSION['p']['text'];?></textarea>
<br>
Телефон:<br>
<input type='text' name='telefon' value="<?=$_SESSION['p']['telefon'];?>">
<br>

Категории:<br />

<select name="id_categories">
<? if($categories):?>
<? foreach ($categories as $key => $item):?>
<optgroup label="<?=$item['0']?>">
<? foreach ($item['next']as $k => $v):?>
<option value="<?=$k?>">--<?=$v;?></option>
<? endforeach;?>
</optgroup>
<? endforeach;?>
<? endif;?>

</select>
<br />

Выбеирте тип объявления:<br />
<? if($razd):?>
<? foreach ($razd as $item):?>
<input type="radio" name="id_razd" value="<?=$item ['id'];?>"><?=$item ['name']?>
<? endforeach;?>
<? endif;?>


<br />

Город:<br>
<input type='text' name='town' value="<?=$_SESSION['p']['town'];?>">
<br>

Основное изображение:<br>
<input type="hidden" name="MAX_FILE_SIZE" value="2097152">
<input type='file' name='img'><br />
Дополнительные изображения:<br>
<input type='file' name='mini[]'><br />
<input type='file' name='mini[]'>
<br /><br />

Период актуальности объявления:<br />
<select name="time">
<option value="10">10 дней</option>
<option value="15">15 дней</option>
<option value="20">20 дней</option>
<option value="30">30 дней</option>
</select>
<br />

Цена:<br>
<input type='text' name='price' value="<?=$_SESSION['p']['price'];?>">
<br>

Введите строку:<br>
<img src="captcha.php"><br /><br /><input type='text' name='captcha'>
<br>

<input type='submit' name='reg' value='Добавить'>
</form>
<? unset($_SESSION['p'])?>
файл captcha.php:
<?
session_start();

require_once "config.php";
require_once "functions.php";

get_img();

?>
Профиль Ответить
16.12.2013 17:37:49 Доска объявлений Сообщение #2
Error 404

Error 404

Продвинутый

Продвинутый

Дата регистрации:
28.07.2013 16:04:47

Сообщений: 48

Добрый вечер. разобраться в таком участке чужого кода сложновато, но у Вас по всему срабатывает это условие:

if(empty($_SESSION['str_cap']) ||$_SESSION['str_cap'] !== $post['capctha'] ){
$_SESSION['p']['title'] = $title;
$_SESSION['p']['text'] = $text;
$_SESSION['p']['town'] = $town;
$_SESSION['p']['price'] = $price;

return "Wrong captcha";

}

видите, эта, как Вы называете, ошибка Wrong captcha отрабатывается Вашем же условием.
Может если вы попробуете условие не много подправить а именно !== исправьте на !=
Я так понимаю в Вас $post['capctha'] хранятся какие-то цифры, а при отправки их с формы тип может быть не integer а string, так что не всегда нужно проверять еще на тип данных.
напишите это условие вот так:

if(empty($_SESSION['str_cap']) ||$_SESSION['str_cap'] != $post['capctha'] ){
...
}
Профиль Ответить
16.12.2013 20:23:52 Доска объявлений Сообщение #3
iracwet

iracwet

Новичок

Новичок

Дата регистрации:
16.12.2013 16:42:43

Сообщений: 9

Спасибо за помощь!
Профиль Ответить
17.12.2013 12:29:55 Доска объявлений Сообщение #4
Error 404

Error 404

Продвинутый

Продвинутый

Дата регистрации:
28.07.2013 16:04:47

Сообщений: 48

Пожалуйта. хоть помогли мои догадки?
Профиль Ответить
17.12.2013 22:01:05 Доска объявлений Сообщение #5
Dmitriy

Dmitriy

Новичок

Новичок

Дата регистрации:
19.10.2013 13:41:58

Сообщений: 3

<-- Код состоит из шаблона(add_mess.tpl.php) -->
уточнение насчет расширения шаблона: он у вас .tpl или же .php?
Профиль Ответить
18.12.2013 22:32:02 Доска объявлений Сообщение #6
iracwet

iracwet

Новичок

Новичок

Дата регистрации:
16.12.2013 16:42:43

Сообщений: 9

Да, ваши догадки мне помогли.
Профиль Ответить