Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek dla www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

koszyk na zakupy, dodawanie produktów dodawanie kategorii formularzem PHP MSQL

14 Wrz 2017 13:11 2430 61
  • Poziom 7  
    Proszę o pomoc w rozwiązaniu błędów wyskakujących podczas dodawania książki do bazy danych za pomocą formularza dodawania książki i dodawania kategorii za pomocą formularza dodawania kategorii?

    Dodawanie książki


    Code:
    Warning: mysql_query() [function.mysql-query]: Access denied for user 'ODBC'@'localhost' (using password: NO) in C:\xampp\htdocs\rozdzial_28\funkcje_admin.php on line 201
    

    Warning: mysql_query() [function.mysql-query]: A link to the server could not be established in C:\xampp\htdocs\rozdzial_28\funkcje_admin.php on line 201
    Książka HTML podstawy nie mogła zostać dodana do bazy danych.


    PowrĂłt do menu administratora

    Dodawanie kategorii

    Code:
    Warning: mysql_query() [function.mysql-query]: Access denied for user 'ODBC'@'localhost' (using password: NO) in C:\xampp\htdocs\rozdzial_28\funkcje_admin.php on line 175
    

    Warning: mysql_query() [function.mysql-query]: A link to the server could not be established in C:\xampp\htdocs\rozdzial_28\funkcje_admin.php on line 175
    Kategoria "Elektronika" nie mogła zostać dodana do bazy danych.


    Powrót do menu administratora



    moja baza danych:
    Spoiler:

    ksiazka_ka.sql
    Kod: sql
    Zaloguj się, aby zobaczyć kod


    populacja.sql
    Kod: sql
    Zaloguj się, aby zobaczyć kod







    admin.php
    Kod: php
    Zaloguj się, aby zobaczyć kod


    dodaj_kat.php

    Kod: php
    Zaloguj się, aby zobaczyć kod


    dodaj_kat_form.php
    Kod: php
    Zaloguj się, aby zobaczyć kod


    dodaj_ksiazke.php

    Kod: php
    Zaloguj się, aby zobaczyć kod


    dodaj_ksiazke_form.php

    Kod: php
    Zaloguj się, aby zobaczyć kod


    edycja_kat.php
    Kod: php
    Zaloguj się, aby zobaczyć kod


    edycja_kat_form.php

    Kod: php
    Zaloguj się, aby zobaczyć kod


    edycja_ksiazki.php

    Kod: php
    Zaloguj się, aby zobaczyć kod


    edycja_ksiazki_form.php
    Kod: php
    Zaloguj się, aby zobaczyć kod


    funkce_admin.php

    Kod: php
    Zaloguj się, aby zobaczyć kod


    funkcje_bazy.php

    Kod: php
    Zaloguj się, aby zobaczyć kod


    funkcje_ksiazka_kz.php
    Kod: php
    Zaloguj się, aby zobaczyć kod


    funkcje_ksiazki.php
    Kod: php
    Zaloguj się, aby zobaczyć kod


    funkcje_prawid_dane.php

    Kod: php
    Zaloguj się, aby zobaczyć kod


    funkcje_uwierz.php
    Kod: php
    Zaloguj się, aby zobaczyć kod


    funkcje_wyswietl.php

    Kod: php
    Zaloguj się, aby zobaczyć kod


    funkcje_zamowien.php

    Kod: php
    Zaloguj się, aby zobaczyć kod


    indeks.php

    Kod: php
    Zaloguj się, aby zobaczyć kod


    kasa.php

    Kod: php
    Zaloguj się, aby zobaczyć kod



    logowanie.php

    Kod: php
    Zaloguj się, aby zobaczyć kod


    pokaz_kat.php

    Kod: php
    Zaloguj się, aby zobaczyć kod


    pokaz_kosz.php

    Kod: php
    Zaloguj się, aby zobaczyć kod



    pokaz_ksiazke.php

    Kod: php
    Zaloguj się, aby zobaczyć kod


    przetworz.php

    Kod: php
    Zaloguj się, aby zobaczyć kod


    usun_kat.php

    Kod: php
    Zaloguj się, aby zobaczyć kod


    usun_ksiazke.php

    Kod: php
    Zaloguj się, aby zobaczyć kod


    wylog.php

    Kod: php
    Zaloguj się, aby zobaczyć kod


    zakup.php
    Kod: php
    Zaloguj się, aby zobaczyć kod


    zmiana_hasla.php
    Kod: php
    Zaloguj się, aby zobaczyć kod


    zmiana_hasla_form.php
    Kod: php
    Zaloguj się, aby zobaczyć kod


    OBRAZKI POWINNY SIĘ ZNAJDOWAĆ W FOLDERZE: (obrazki) tam gdzie się znajdują wszystkie pliki c:xampp/htdocs/rozdzial_28/obrazki/

    koszyk na zakupy, dodawanie produktów dodawanie kategorii formularzem PHP MSQLkoszyk na zakupy, dodawanie produktów dodawanie kategorii formularzem PHP MSQLkoszyk na zakupy, dodawanie produktów dodawanie kategorii formularzem PHP MSQLkoszyk na zakupy, dodawanie produktów dodawanie kategorii formularzem PHP MSQLkoszyk na zakupy, dodawanie produktów dodawanie kategorii formularzem PHP MSQLkoszyk na zakupy, dodawanie produktów dodawanie kategorii formularzem PHP MSQLkoszyk na zakupy, dodawanie produktów dodawanie kategorii formularzem PHP MSQLkoszyk na zakupy, dodawanie produktów dodawanie kategorii formularzem PHP MSQLkoszyk na zakupy, dodawanie produktów dodawanie kategorii formularzem PHP MSQLkoszyk na zakupy, dodawanie produktów dodawanie kategorii formularzem PHP MSQLkoszyk na zakupy, dodawanie produktów dodawanie kategorii formularzem PHP MSQLkoszyk na zakupy, dodawanie produktów dodawanie kategorii formularzem PHP MSQLkoszyk na zakupy, dodawanie produktów dodawanie kategorii formularzem PHP MSQLkoszyk na zakupy, dodawanie produktów dodawanie kategorii formularzem PHP MSQLkoszyk na zakupy, dodawanie produktów dodawanie kategorii formularzem PHP MSQL
  • Moderator - Komputery Serwis
    Witaj.

    Krzysiek...87! napisał:
    C:\xampp\htdocs\rozdzial_28\funkcje_admin.php on line 175
    C:\xampp\htdocs\rozdzial_28\funkcje_admin.php on line 201

    Jak widać, błąd pochodzi ze 175 i 201 linijki pliku, którego nie zamieściłeś, zainteresuj się, jak wygląda właśnie tamten fragment kodu.

    Tłumacząc same błędy - jedna z linijek głosi, że połączenie z bazą danych nie mogło zostać nawiązane, a druga - że dostęp jest zabroniony dla użytkownika ODBC bez hasła. Powinieneś sprawdzić, czy z bazą danych jest wszystko OK, czy taki użytkownik ma uprawnienia do zalogowania się do tej bazy - również wypadałoby zerknąć w logach błędów samej bazy, co się dzieje.
  • Poziom 7  
    Już są wszystkie pliki trochę ich było dlatego zajęło mi to trochę czasu.
  • Moderator - Komputery Serwis
    Kod jest, teraz wypada sprawdzić resztę, zgodnie z tym co pisałem - czyli bazę danych i możliwość połączenia się do niej oraz błędy w jej logu.
  • Poziom 7  
    Połączenie za bazą działa ponieważ mogę tak jakby kupić produkt z bazy danych mogę się zalogować jako administrator ale w menu administratora nie mogę dodać nowego produktu(po wypełnieniu formularza dodania nowej książki wyskakuje powyższy błąd) i nie mogę dodać nowej kategorii produktów(po wypełnieniu formularza dodania nowej kategorii wyskakuje wyżej przedstawiony błąd).

    PO ZŁOŻENIU zamówienia w bazie jest dodany klient i jego zamówienie czyli połączenie w tym wypadku z bazą jest ale nie mogę jak już napisałem dodać za pomocą formularza nowego produktu(książki) i nie mogę za pomocą formularza dodać nowej kategorii.

    DODAM ŻE PLIKI POCHODZĄ Z KSIĄŻKI
  • Poziom 34  
    Musisz kolego czytać te komunikaty PHP i sprawdzać co bezpośrednio powoduje te błędy we wskazanych liniach:
    Kod: php
    Zaloguj się, aby zobaczyć kod


    I w pierwszym i w drugim wypadku nie pobierana jest kwerenda z bazy MySQL.

    Wg opisu
    Cytat:
    Access denied for user 'ODBC'@'localhost' (using password: NO)
    - wskazuje, że nie masz chyba usera "ODBC" w swojej bazie i w związku
    z tym nie masz tam dostępu. Albo ustawisz dostęp na roota (który na pewno jest :D) albo Admina czy innego zalogowanego usera.

    Sprawdź w PHPMyAdmin jakich uprawnionych userów masz w swojej bazie.
  • Moderator - Komputery Serwis
    Patrząc po ostatnich linijkach pliku, którym była tworzona baza:

    Kod: sql
    Zaloguj się, aby zobaczyć kod


    to jeśli ten skrypt został bez jakiejkolwiek analizy po prostu uruchomiony, użytkownik powinien nazywać się ksiazka_kz i powinien używać hasła brzmiącego haslo do połączenia. Kolegi skrypty próbują się łączyć jako użytkownik ODBC i do tego bez hasła. To według komunikatu, bo według skryptu jest jeszcze nieco inaczej:

    Kod: php
    Zaloguj się, aby zobaczyć kod


    W tym przypadku łączymy się z localhostem (prawidłowo), ale już korzystamy z bazy jako użytkownik root (co nie jest bezpieczne, ale powinno działać) i identyfikujemy się hasłem ksiazkorama123 łącząc się do bazy książka_kz.

    Jeśli hasło roota do bazy to ksiazkorama123, to teoretycznie takie połączenie powinno działać, mimo że to dość niebezpieczne podejście (do ćwiczeń może zostać, do ekspozycji takiego sklepu na zewnątrz już bym się bał).
  • Poziom 7  
    Rozumiem że muszę utworzyć jeszcze raz bazę danych z pliku SQL w którym powinna być taka zmiana?
    PLIK ORYGINALNY:
    grant select, insert, update, delete
    on ksiazka_kz.*
    to ksiazka_kz@localhost identified by 'haslo';

    PLIK ZMIENIONY(w plikach jeszcze nie zmieniłem, czy tak powinno być zmienione?):
    grant select, insert, update, delete
    on ksiazka_kz.*
    to root identified by 'ksiazkorama123';

    W mojej bazie jest też administarator(po zalogowaniu jako admin mogę dodawać produkty lub kategorie do sklepu) jako: admin hasło: admin

    Proszę o pomoc w którym miejescu mam podmienić użytkownika: admin(lub użytkownika: root) i hasło: admin(lub hasło: ksiazkorama123)
    Moja baza danych tabela: admin kolumna: nazwa_uz kolumna: haslo , zaszyfrowane hasło(admin):
    koszyk na zakupy, dodawanie produktów dodawanie kategorii formularzem PHP MSQL
  • Poziom 7  
    Nadal wyskakuje taki błąd:

    Dodawanie książki


    Warning: mysql_query() [function.mysql-query]: Access denied for user 'ODBC'@'localhost' (using password: NO) in C:\xampp\htdocs\rozdzial_28\funkcje_admin.php on line 201

    Warning: mysql_query() [function.mysql-query]: A link to the server could not be established in C:\xampp\htdocs\rozdzial_28\funkcje_admin.php on line 201
    Książka HTML podstawy nie mogła zostać dodana do bazy danych.

    PowrĂłt do menu administratora

    Dodawanie kategorii


    Warning: mysql_query() [function.mysql-query]: Access denied for user 'ODBC'@'localhost' (using password: NO) in C:\xampp\htdocs\rozdzial_28\funkcje_admin.php on line 175

    Warning: mysql_query() [function.mysql-query]: A link to the server could not be established in C:\xampp\htdocs\rozdzial_28\funkcje_admin.php on line 175
    Kategoria "Mechanika" nie mogła zostać dodana do bazy danych.

    Powrót do menu administratora

    PO ZA TYM BŁĘDEM WSZYSTKO DZIAŁA DODANE ZAMÓWIENIE WRAZ Z KUPUJĄCYM JEST DODANE DO BAZY PO DOKONANIU ZAKUPU
  • Moderator - Komputery Serwis
    Powinien Kolega poszukać w kodzie, gdzie użytkownik jest ustawiony na sztywno na ODBC. W tych plikach, które Kolega zamieścił nie widać takiej definicji użytkownika, ale w komunikacie błędu jest wyraźnie napisane, że użytkownik ODBC nie ma uprawnień do połączenia z bazą.
  • Poziom 7  
    Nie znalazłem ODBC w kodzie poszukam jeszcze w w innych plikach kodu.
    Może problem jest w uprawnieniach bazy poniżej zdjęcia:
    koszyk na zakupy, dodawanie produktów dodawanie kategorii formularzem PHP MSQLkoszyk na zakupy, dodawanie produktów dodawanie kategorii formularzem PHP MSQLkoszyk na zakupy, dodawanie produktów dodawanie kategorii formularzem PHP MSQL
  • Moderator - Komputery Serwis
    Czytając błąd problem polega na tym, że próbuje się kolega bazie danych uwierzytelnić jako użytkownik ODBCz jakiegoś powodu. Jako że użytkownik ODBC nie ma uprawnień do tej bazy (a nawet może nie istnieje), zwracany jest błąd autoryzacji.

    Więc tak, problem jest zdecydowanie w uprawnieniach.
  • Poziom 7  
    Jak mogę zmienić uprawnienia w bazie danych(rozumiem że w miejscu które przedstawiłem na powyższych zdjęciach)?
  • Moderator - Komputery Serwis
    Ja tam bym na Kolegi miejscu próbował zrozumieć skrypt, który chce Kolega uruchomić, ale oczywiście można też dodać kolejnego użytkownika, do tego niezabezpieczonego hasłem i nadać mu wszystkie uprawnienia. To już wtedy do jednej prostej bazy będzie się Kolega łaczył korzystając naprzemiennie z kont root, admin, ksiazka_kz i jeszcze nam dojdzie ODBC :)

    Przy okazji - z kontem odbc próbujemy się łączyć wtedy, gdy nie podamy jakiegokolwiek użytkownika. Biorąc pod uwagę, że próbujemy łączyć się z kontem ODBC i bez hasła - można się spodziewać, że gdzieś w kodzie jest próba połączenia się z bazą wcale nie używając konta ODBC, a po prostu nie podając niczego.
  • Poziom 7  
    Podałem zdjęcia bazy w miejscu dodania użytkownika, czy tak ma być? Co znaczy skrót ODBC , mam to wpisać jako nazwa nowego użytkownika ?
    koszyk na zakupy, dodawanie produktów dodawanie kategorii formularzem PHP MSQLkoszyk na zakupy, dodawanie produktów dodawanie kategorii formularzem PHP MSQL
  • Poziom 34  
    Przejrzyj kolego w swojej instalacji plik php.ini w sekcji ODBC (Open Database Connectivity ) - jak Ci już wcześniej wyjaśniał dt1 prawdopodobnie masz tam ustawionego domyślnego usera na ODBC.

    Łączność z bazą roboczą strony zapewnia mysql.php - sprawdź tam jak ten Twój skrypt realizuje połączenie z serwerem mysql, oraz jak masz ustawione pliki ini dla serwera MySQL :|

    Jeśli myślisz o wyjściu z Twoim sklepem na zewnątrz (serwer zewnętrzny :D ) to ustawienie projektu na domyślnych userach bez hasła - to kardynalny błąd. :sm31:
  • Poziom 7  
    Nie mogę znaleźć pliku php.ini nie wiem gdzie on się znajduje ?


    Nie tworze obecnie sklepu uczę się pisania stron www ale książka to nie kiedy za mało nie wszystko jest wyjaśnione i nieraz w książkach zdarzają się błędy a bez doświadczenia nie jest łatwo.
    Dodam że po uporaniu się z tym problemem mam zamiar stworzyć sklep internetowy oczywiście ma serwerze lokalnym na początek, nie wiem jakie problemy są z płatnościami, kartą itp. w obecnych plikach płatność kartą działa i zamówienie jest księgowane w bazie ale oczywiście to tylko serwer lokalny ciekawi mnie jak jest z płatnościami online na serwerach www itp. ?
  • Moderator - Komputery Serwis
    Napisanie sklepu od zera nie jest łatwym zadaniem. Jeśli się dopiero zaczynasz uczyć programować to jeszcze kilka lat, a jeśli masz na to dużo czasu to może miesięcy i będziesz w stanie stworzyć jakiś niezawodny skrypt, który będzie spełniał jakieś tam wymagania stawiane sklepom internetowym.

    Póki co radziłbym przyjrzeć się gotowcom - opencart, prestashop, magento i inne - bo po co wymyślać od nowa koło. Te skrypty po zainstalowaniu można w pełni spersonalizować, dołożyć moduły płatności itd. Pracowało nad nimi przez wiele lat wiele osób, więc powinny być już dopracowane.

    A sama nauka programowania stron internetowych się Koledze przy tym temacie na pewno przyda, więc warto to zrobić (chociaż mam nadzieję, że zaczyna Kolega od podstaw, a nie od rozdziału 28, gdzie stawia się przykładowy skrypt na serwerze. Jeszcze jedna rzecz, której się trzeba nauczyć to obsługa Google, czy też innej wyszukiwarki wedle uznania. To nie jest złośliwość, ale pytanie o lokalizację PHP.INI nie wróży najlepiej (więc tutaj w ramach pierwszej nauki: wpisujemy w google jak wyszukiwać pliki na komputerze lub lokalizacja php.ini windows - warto spróbować, może zadziała, a jeśli nie - zmodyfikować zapytanie). W przypadku chęci nauki programowania, konfiguracji własnego serwera i towarzyszących im czynności z wyszukiwarką trzeba być na Ty (zanim pomyślisz, że masz pytanie, powinieneś je kończyć wpisywać w wyszukiwarce).
  • Poziom 7  
    Uczę się z książki rozdział po rozdziale, 28 rozdział (tworzenie koszyka na zakupy) to jeden z końcowych rozdziałów pozostało mi jeszcze tworzenie forum www i bezpieczeństwo stron internetowych.
    Dodam że wcześniej przerobiłem projektowanie stron www dla początkujących HTML CSS. Mam swoją stronę www.krzysiekpl87.cba.pl z działającą wyszukiwarką(wyszukującą zakładki na stronie, mapą dojazdu, w zakładce nowości w galerii jest umieszczony film, galeria obecnie jest martwa chociaż potrafię na obecną chwilę ją ożywić jest to moja pierwsza strona na serwerze www. Wcześniej kurs wordpressa ale obecnie nie mam swojego motywu ponieważ postanowiłem popracować nad zaznajomieniem się z językiem php.
    Mam zamiar tworzyć strony www takie jak wizytówki, foldery, portale, sklepy także wszystkie te strony w systemie cms wordpress itp.

    PROSZĘ O POMOC W ZANALEZIENIU pliku php.ini
  • Poziom 7  
    koszyk na zakupy, dodawanie produktów dodawanie kategorii formularzem PHP MSQL
    Wydaje mi się że jest to ten plik na którego wskazuje strzałka na obrazku: (php ustawienia konfiguracyjne) jest to cały kod w kilku plikach:

    Kod: php
    Zaloguj się, aby zobaczyć kod



    Kod: php
    Zaloguj się, aby zobaczyć kod



    Kod: php
    Zaloguj się, aby zobaczyć kod

    Kod: php
    Zaloguj się, aby zobaczyć kod

    Kod: php
    Zaloguj się, aby zobaczyć kod

    Kod: php
    Zaloguj się, aby zobaczyć kod

    Kod: php
    Zaloguj się, aby zobaczyć kod
  • Poziom 7  
    Wydaje mi się że chodzie o ten kod ale nie wiem co w nim:
    Kod: php
    Zaloguj się, aby zobaczyć kod
  • Poziom 31  
    Pokaż plik funkcje_admin.php
  • Moderator - Komputery Serwis
    szwagros napisał:
    Pokaż plik funkcje_admin.php

    Jest w spoilerze w pierwszym poście.
  • Poziom 31  
    Faktycznie. Miałem wyłączony JS.
    :arrow: Krzysiek...87! zdecyduj się czy używasz rozszerzenia mysql czy mysqli.
  • Poziom 7  
    Czyli błąd polega na tym że w jednym pliku jest rozszerzenie mysql a w innym mysqli?
    Co muszę zmienić?
    np.:

    w pliku funkcje_admin.php mysql_query jest prawidłowo, czy ma być mysqli_query?

    Wycinek pliku funkcje_admin.php:

    $wynik = mysql_query($zapytanie);
    if ((!$wynik) || (mysql_num_rows($wynik)!=0)) {
    return false;
    }
  • Poziom 7  
    Próbowałem przestawić mysql na mysqli ale nadal wyskakuje jeden błąd:

    Dodawanie książki


    Warning: mysqli_query() expects at least 2 parameters, 1 given in C:\xampp\htdocs\rozdzial_28\funkcje_admin.php on line 201
    Książka HTML podstawy nie mogła zostać dodana do bazy danych.

    PowrĂłt do menu administratora


    PO PRZESTAWIENIU na msql z powrotem są 2 błedy ale ten pierwszy z odbc na mysqli jak widać powyżej tego błędu z odbc nie ma:

    Dodawanie książki


    Warning: mysql_query() [function.mysql-query]: Access denied for user 'ODBC'@'localhost' (using password: NO) in C:\xampp\htdocs\rozdzial_28\funkcje_admin.php on line 201

    Warning: mysql_query() [function.mysql-query]: A link to the server could not be established in C:\xampp\htdocs\rozdzial_28\funkcje_admin.php on line 201
    Książka HTML podstawy nie mogła zostać dodana do bazy danych.

    PowrĂłt do menu administratora


    Proszę nadal o pomoc obecnie nie wiem co jeszcze można zmienić?
  • Poziom 7  
    Na powyższej stronie wszystko jest po angielsku a strony nie da się przetłumaczyć na polski.

    Dodano po 3 [minuty]:

    Tłumaczenie już działa sprubóję poszukać.

    Dodano po 6 [minuty]:

    Nie mogę znaleźć tego błędu.
  • Poziom 31  
    Krzysiek...87! napisał:
    Na powyższej stronie wszystko jest po angielsku a strony nie da się przetłumaczyć na polski.

    Przyzwyczajaj się. Niewiele osiągniesz w dziedzinie programowania bez przynajmniej rozumienia dokumentacji po angielsku. Translator w większości przypadków niestety wymięka.