[Дмирий Валак] Интернет магазин на PHP и MySQL [2012, RUS]

Страницы :   Пред.  1, 2, 3
Ответить
 

not_error_404

Стаж: 10 лет 8 месяцев

Сообщений: 70

not_error_404 · 20-Янв-15 21:13 (10 лет 7 месяцев назад)

в index.php где вы в switche вызываете функцию add_to_cart, проверьте, что она возвращает. это выглядит так if(!add_to_cart($id)) exit("сессия корзины не записана");
и case('cart'): - должны идти какие то действия, которые формируют внешний вид корзины и ее отображение. ради интереса просмотрите бегло следующий урок курса. по любому, автор должен пояснить блок case('cart')
[Профиль]  [ЛС] 

boddahh

Стаж: 17 лет 7 месяцев

Сообщений: 25


boddahh · 20-Янв-15 21:14 (спустя 1 мин.)

Вот код файла index.php , последнего урока автора курса:
Код:
<?
include('db_fns.php');
include('cart_fns.php');
session_start();
if(!isset($_SESSION['cart']))
{
    $_SESSION['cart'] = array();
    $_SESSION['total_items'] = 0;
    $_SESSION['total_price'] = '0.00';
}
$view = empty($_GET['view']) ? 'index' : $_GET['view'];
switch($view)
{
    case('index'):
        $products = get_products();
    break;
    case('cat'):
        $cat = $_GET['id'];
        $products = get_cat_products($cat);
    break;
    case('product'):
        $id = $_GET['id'];
        $product = get_product($id);
    break;
    case('cart'):
    break;
    case('add_to_cart'):
        $id = $_GET['id'];
        $add_item = add_to_cart($id);
        $_SESSION['total_items'] = total_items($_SESSION['cart']);
        $_SESSION['total_price'] = total_price($_SESSION['cart']);
        header('Location: index.php?view=product&id='.$id);
    break;
    case('update_cart'):
        update_cart();
        $_SESSION['total_items'] = total_items($_SESSION['cart']);
        $_SESSION['total_price'] = total_price($_SESSION['cart']);
        header('Location: index.php?view=cart');
    break;
    case('order'):
    break;
}
$arr = array('index','cat','product','cart','add_to_cart','update_cart','order');
if(!in_array($view,$arr)) die("ERROR 404!");
include($_SERVER['DOCUMENT_ROOT'].'/shop/views/layouts/shop.php');
?>
Только, когда я меняю даже все свои файлы не его, ничего не меняется.
[Профиль]  [ЛС] 

not_error_404

Стаж: 10 лет 8 месяцев

Сообщений: 70

not_error_404 · 20-Янв-15 21:36 (спустя 21 мин., ред. 20-Янв-15 21:36)

я реально уже запутался. принцип ясен. но где вы точно ошиблись, я не знаю. у Вас массив не приходит в total_price(), точнее приходит,но не такой, какой вы его формируете в add_product(). у вас точно id передается в ссылке по добавлению товара в корзину?
напишите echo '$id'.$id; перед $ $add_item = add_to_cart($id); в вашем index.php и попробуйте добавить товар
[Профиль]  [ЛС] 

boddahh

Стаж: 17 лет 7 месяцев

Сообщений: 25


boddahh · 20-Янв-15 22:18 (спустя 42 мин.)

not_error_404 писал(а):
66599088я реально уже запутался. принцип ясен. но где вы точно ошиблись, я не знаю. у Вас массив не приходит в total_price(), точнее приходит,но не такой, какой вы его формируете в add_product(). у вас точно id передается в ссылке по добавлению товара в корзину?
напишите echo '$id'.$id; перед $ $add_item = add_to_cart($id); в вашем index.php и попробуйте добавить товар
А где именно в index.php написать '$id'.$id; перед $ $add_item = add_to_cart($id);& ?
[Профиль]  [ЛС] 

not_error_404

Стаж: 10 лет 8 месяцев

Сообщений: 70

not_error_404 · 20-Янв-15 23:37 (спустя 1 час 19 мин., ред. 20-Янв-15 23:37)

в блоке case('add_to_cart')
после $id=$_GET['id']
да,так Вы проверите, есть ли вобще значение $id, которое Вы в функцию отдаете. сохраните и попробуйте добавить товар.
колхозный метод- написать такую строчку array_shift($cart) в функции total_price перед строкой if(is_array($cart)). У вас первый элемент массива- пустой. а дальше уже что-то похожее на массив. сделайте так и ошибка mysql_result должна уйти
[Профиль]  [ЛС] 

boddahh

Стаж: 17 лет 7 месяцев

Сообщений: 25


boddahh · 21-Янв-15 01:05 (спустя 1 час 27 мин.)

not_error_404 писал(а):
66599715в блоке case('add_to_cart')
после $id=$_GET['id']
да,так Вы проверите, есть ли вобще значение $id, которое Вы в функцию отдаете. сохраните и попробуйте добавить товар.
Сделал. Вот: http://i63.fastpic.ru/big/2015/0121/2b/d1ef9c53bc1f9a971ff94c986d04012b.png
[Профиль]  [ЛС] 

not_error_404

Стаж: 10 лет 8 месяцев

Сообщений: 70

not_error_404 · 21-Янв-15 11:00 (спустя 9 часов, ред. 21-Янв-15 13:35)

Вы точно исправили файл, где у Вас не формировался id в ссылке? Вы наводите на ссылку добавления товара, а внизу в строке браузера высвечивается localhost/shop/index.php?view=add_to_cart&id=(цифра- id товара)? если id высвечивается, то я не знаю, чем Вам помочь.
Все ваши остальные ошибки идут как раз от mysql_result, получается, что из-за ошибки, отправляется заголовок с информацией по ошибке, а вы следом отправляете редирект строкой header('Location: index.php?view=product&id='.$id); , редиректа не происходит и внизу файла index.php в шаблон shop.php вы отдаете имя куска view, которого нет в подключаемых файлах, вот он вам и плюется. нормальные люди учат после header('Location: bla bla bla'); писать exit; уже очевидно, что курс, мягко говоря ни очем. максимум, чему вы научитесь, так это печатать побыстрее и ошибки искать...автор фигачит все подряд в функции и даже не проверяет, что он туда сует.отсюда наши танцы с бубном.
boddahh
просто, по человечески, советую пока не бросаться ни на какие интернет-магазины, а позаниматься основами языка.если считаете, что видеокурсы для вашего восприятия - самое оно, то лучше посмотрите "специалиста" по разработке на php, там и магазин есть, и работа с базой хорошо разобрана, там полноценный курс, где Вам с самого начала все по порядку расскажут. а этот курс бросьте, когда чуть-чуть разберетесь с работой приложений на php посмотрите его забавы ради...вот увидите, он вас потешит...на что я балбес в этих делах, и то, бесился вчера,когда эти завихрения разума автора разбирал.
[Профиль]  [ЛС] 

boddahh

Стаж: 17 лет 7 месяцев

Сообщений: 25


boddahh · 21-Янв-15 19:36 (спустя 8 часов, ред. 21-Янв-15 19:36)

not_error_404 писал(а):
66603427Вы точно исправили файл, где у Вас не формировался id в ссылке? Вы наводите на ссылку добавления товара, а внизу в строке браузера высвечивается localhost/shop/index.php?view=add_to_cart&id=(цифра- id товара)?
Да. Все высвечивается.
Может я Вам скину архив сайта, и Вы посмотрите, где моя ошибка, если Вам не сложно, разумеется?
Я обязательно попробую "Специалист". Просто мне казалось, что эти курсы, Валака и Попова, куда проще для чайников, ибо у специалиста, как мне кажется, очень много инфы, которая вряд ли вообще когда-либо понадобится, при создании 80% сайтов и редактировании функционала двух самых популярных CMS. Хотя я, конечно, могу ошибаться. Просто у специалиста уроки намного длиннее, что наводит на подобные мысли. Да, и теорию я у Валака и Попова проходил. Просто, не быстро все запоминается, к сожалению.
Кстати, а как Вам вот эта интерактивка?
http://www.codecademy.com/ru/tracks/php
Тем не менее, все же хотелось бы добить этот курс, ибо не люблю бросать почти доделанное.
И все же, почему, когда я меняю все свои файлы в папке сайта на файлы автора курса, ничего не меняется? Неужели ошибка где-то в БД MySql?
Спасибо.
[Профиль]  [ЛС] 

not_error_404

Стаж: 10 лет 8 месяцев

Сообщений: 70

not_error_404 · 21-Янв-15 20:01 (спустя 25 мин.)

ок. давайте добивать проблему, раз решили.тоже не любитель бросать начатое.вы мне дамп своей базы данных скиньте, а исходники к курсу я отсюда скачаю(а вобще и свои исходники киньте). посмотрю, как у меня это дело будет работать. но честно скажу, этот курс бестолковый. а вот как раз специалист, рассказывает все, что нужно, поверьте. и даже для разбора CMS, поверьте, я кучу г*на пересмотрел в надежде научиться чему-либо(признаюсь, зря тратил время, поэтому Вас тоже от этих лохотронов пытаюсь предостеречь). кстати, мы с вами трепа столько развели в этой теме, народ будет обижаться, что свои проблемы решали в форуме.)))в личку вам закину свою почту, жду исходники и дамп базы.
[Профиль]  [ЛС] 

xatabruslan

Стаж: 12 лет 9 месяцев

Сообщений: 3


xatabruslan · 22-Мар-15 15:31 (спустя 2 месяца)

Ребят при обновлении(Урок 8 - Обновление количества товаров и подсчет ) выкидывает на страницу shop(со всеми товарами) а должен остаться в корзине,все по урокам делал,кто еще сталкивался с этим?
[Профиль]  [ЛС] 
 
Ответить
Loading...
Error