Topic: Padekit suprasti SQL

Tai va pabandysiu kuo aiskiau isdestyt savo problema. Visu pirma noriu pasakyt, kad neturiu nieko bendra su PHP, SQL ir apskritai su jokiu programavimu. Esu apie tai kazka girdejes, bet tik vartotojo lygmenyje, todel ir reikia jusu pagalbos. Ta pagalba butu labai naudinga bent jei uzvestumet mane ant kelio, kad isvis suprasciau ka daryt toliau.

Esme tokia: turiu pilna tinklalapio su turinio valdymo sistema koda su daug daug php, html failu ir pan. Noriu ta tinklapi paleist (ismegint) savo kompiuteryje. Isidiegiu php, mysql serveri. Tinklapio emuliavimui (ar kaip cia kitaip pavadinus) naudoju programa PHP Expert editor. Problema tame, kad bandant emuliuot, uzkrauna tik dali tinklapio (keli paveiksliukai) ir gaunami errorai "Table 'article' doesn't exist" ir taip pat nerandama ir daug kitu lenteliu. Tarp to tinklapio failu randu kelis *.sql tipo failus. Vienas is ju yra toks CREATE DATABASE kkn; GRANT ALL PRIVILEGES ON kkn.* TO root@localhost;FLUSH PRIVILEGES;
Kitame sql faile kaip as suprantu sukurta daug lenteliu su create table, priskirti pirminiai raktai ir pan. Tai mano klausimas butu kaip tuos sql failus pririst prie php kodo, kad ji leidziant ta db butu matoma, kad pasiimtu tas lenteles is ten. php kode randu nurodyta:
$S_DB_HOST = 'localhost';
$S_DB_NAME = 'kkn';
$S_DB_USER = 'root';
$S_DB_PASSWD = '';
bet vistiek tas man nieko nepadeda.
Speju tuos sql failus reikia kazkaip startuot kazkur, sukurt ta duomenu baze, bet kaip ta padart tai nezinau. Sakau sitam reikale as nieko nesuprantu ir prasau uzveskite bent ant kelio kaip cia ka daryt tokioj situacijoj. Beje google irgi bandziau naudotis ir zinau, kad ten galima rast atsakymus i visus klausimus, bet pries tai reikia moket tuos klausimus suformuluot ir zinot apie ka eina kalba, o kai as nelabai zinau, tai nieko ten ir nerandu :)
Dekui is anksto uz pagalba :)

Re: Padekit suprasti SQL

*.sql failas dar nėra duomenų bazė. Tai kaip txt failas, kuriame laikomos užklausos. Dažnai .sql faile yra saugomas duomenų bazės dump'as (eksportuoti duomenys ir struktūra) - kurį galima perkelti tarp serverių ir vėl importuoti pagal poreikius.

Kitaip sakant tuose .sql failuose tikriausiai (bet nebūtinai) yra saugoma tai ko tau reikia, tik juos papildomai reikia importuoti į mysql serverį.

jeigu viskas +- yra gerai sukonfigūtuota tai gali užtekti tik "mysql duomenu_baze < failas.sql". čia "duomenu_baze" jau turi egzistuoti, jeigu jos nėra ją reikia sukurti. Pagal tavo aprašymą viename faile ji lyg ir sukuriama, tai gali būti gal procedūra yra tokia:

mysql.exe < failas_kuriame_yra_create_database.sql
mysql.exe duomenu_baze < failas_kuriame_yra_kuriamos_lenteles_ir_insertinami_duomanys.sql

duomenu_baze - čia tikriasiai reikėtų naudoti "kkn".
mysql.exe yra mysql serverio bin kataloge (windows atveju).

Noriu pažymėti, kad čia tik prielaida ir kaip viskas tiksliai turi veikia gali pasakyti:
a) tas žmogus, kuris sukūrė tą svetainę;
b) specialistas peržiūrėjęs failus;
c) svetainės dokumentacija;

Taip pat pateikti pavyzdžiai yra tik orientacinio pobūdžio, nes dažnai dirbant su duomenų bazėmis reikalingos tam tikros taisės (vartotojai), kuriuos reikia papildomai sukonfigūruoti ir neturint žinių galima ilgam užstrigti, o vienu sakiniu čia nepapasakosi...

Re: Padekit suprasti SQL

Labai aciu uz info, ji buvo naudinga, nes kazkokia pradzia jau yra :)
Importuojant ismeta 1064 error'a, kuris reik manyt yra del mysql versiju neatitikimo.
Taigi artimiausiu metu bandysiu instaliuotis naujesne versija ir vel testuot...

Re: Padekit suprasti SQL

O nesunku būtų parodyti pilną klaidos pranešimą?

Re: Padekit suprasti SQL

O visas klaidos pranesimas:
ERROR 1064 at line 1: You have an error in your SQL syntax.  Check the manual that corresponds to your MySQL server version for the right syntax to use near '’&#9559;
&#9488;/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIE

Re: Padekit suprasti SQL

O kas ten per simboliai prieš "/*"?

Re: Padekit suprasti SQL

Va del tu simboliu tai nezinau, kode ju nera, o cmd jau rodo. Nu bet atnaujinus mysql viskas importavos i man reikalinga DB.
Bet atsirado nauju problemu... Dabar meta kazkoki "PHP Warning: Function registration failed - duplicate name ..." errora. Vienu zodziu nesuprantant viso sito reikalo cia be sansu ka nors man paciam padaryt. Nors keista, viskas lyg ir turetu veikt, nes tinklapio kodas tikrai teisingas ir pilnas, bet kazka su tais php, mysql serveriais kazka blogai darau turbut

Re: Padekit suprasti SQL

ta problema issprendziau. dabar kita atsirado...
"PHP Warning: Unknown(): Unable to load dynamic library 'C:\php\extensions\php_mysql.dll' - The specified module could not be found. in Unknown on line 0 PHP Warning: Unknown(): Unable to load dynamic library 'C:\php\extensions\php_mysqli.dll' - The specified module could not be found. in Unknown on line 0 "
php.ini atkomentuoti reikalingi dll, extensions direktorija nurodyta, toje direktorijoje tie dll egzistuoja, per phpinfo rodo, kad mysql enabled, tai nesuprantu kas dar negerai. tuoj galva jau sprogs nuo google

Re: Padekit suprasti SQL

O tu tikėjaisu, kad viskas būna lengvai ir paprastai pasiekiama? (-;

Re: Padekit suprasti SQL

ne nu ne lengvai ir nepaprastai, bet as jau savaite siekiu siekiu ir nieko nepasiekiu :)

Re: Padekit suprasti SQL

phpinfo atkreipk dėmesį į "Configuration File (php.ini) Path" ir "Loaded Configuration File" direktyvas. Ar jos sutampa su tavo redaguojamu php.ini failiuku? :)

Re: Padekit suprasti SQL

aegis wrote:

phpinfo atkreipk dėmesį į "Configuration File (php.ini) Path" ir "Loaded Configuration File" direktyvas. Ar jos sutampa su tavo redaguojamu php.ini failiuku? :)

zinoma :) bet kas is to, jei visvien nieko gero...

Re: Padekit suprasti SQL

Pabandyk kelią iki failo perrašyt su paprastais pasvyraisiais brūkšniais:

C:/php/extensions/php_mysqli.dll

Re: Padekit suprasti SQL

Beje, kaip suprantu php ir mysql atskirai įdiegiai? Nenaudojai tokių paketų, kaip tarkim WAMP?

Re: Padekit suprasti SQL

Sveiki, cia vel as...
vel pasakosiu ka ir kaip turiu, gal kas uzmes ka naudingo.
Kadangi nelabai gaudausi situose reikaluose, tai rasysiu kaip pats viska suprantu. Situacija pas mane tokia. Instaliavau XAMPP. Visi servisai PHP, Mysql, Apache veikia gerai, viskas kaip ir ok. Turiu interneto svetaines koda rasyta php. Per phpmyadmin susikuriu DB, i ja importuoju visas svetaines lenteles (straipsniai, rubrikos, statistika ir kt.) jau su tam tikra uzpildyta info. Pirminis puslapis per http://localhost/www/index.php veikia gerai, rodo naujienas ir pan, bet einant kur nors i kokia rubrika, tiesiog ismeta visu tos svetaines rubriku sarasa ir viskas. Spaudziant tam sarase ant tos rubrikos nieko nevyksta, nors duomenu bazeje ir yra straipsnis kazkoks. Nuorodos i rubrikas vaizduojamos kaip ../index.php#r/5 kur skaicius kaip suprantu yra rubrikos ID.
Atrodo tiek nedaug jau truksta, kad viskas normaliai veiktu, bet niekaip neiseina nieko padaryt. Gal kas nors ka nors patars, gal cia tiesiog reikia kur ka ijungt papildomai? Nors duomenu baze pasiekiama normaliai kaip ir, nes kitaip nevaizduotu isvis tu rubriku su pavadinimais ir pan. Gal cia index.php problema kokia?
Laukiu kokio patarimo. Is anksto labai dekui.

Re: Padekit suprasti SQL

Yra tikimybė, kad puslapis programuotas senai ir naudojami globalūs parametrai. Pabandyk php.ini faile nustatyti:

register_globals = On

ir pabandyk perkrovus serverį ar rodo teisingai.

Re: Padekit suprasti SQL

minde wrote:

Yra tikimybė, kad puslapis programuotas senai ir naudojami globalūs parametrai. Pabandyk php.ini faile nustatyti:

register_globals = On

ir pabandyk perkrovus serverį ar rodo teisingai.

net nezinau ka pasakyt... :)
net nesitikejau isvis, kad kas ka atsakys i mano tokius neaiskius savo problemos isaiskinimus, bet pasirodo, kad atsakyma gavau akimirksniu.
Viskas sukasi puikiai. Aciu tau labai gerasis zmogau.
As niekad gyvenime nebuciau pats issiaiskines to, nes absoliuciai nieko cia nesuprantu. o tu man padejai. Lieku labai skolingas :)