[ stefic_kg @ 28.03.2009. 00:01 ] @
"Kreirao" sam eProdavnicu na mom kompu (tj. dobio sam na faxu vec skoro celu odradjenu, ja sam je malo izmenio i kreirao bazu podataka), ali kad idem na localhost/mymarket, otvori se normalno pocetna strana (tj. index.php).
Ali na njoj se pojavljuje deo koda za SQL, koji glasi:
Code:

Can't execute query

SELECT id, name, description, price FROM products WHERE on_special = 1

MySQL Error: Unknown column 'on_special' in 'where clause'

This script cannot continue, terminating.


i sad kad ja kliknem na bilo koji link na pocetnoj strani on izbaci ovu gresku:

Code:

Forbidden

You don't have permission to access /mymarket/< on this server.


Da li moze neki komentar i pomoc, posto ja tek ucim PHP i SQL.
Svaki savet dobrodosao.
[ stsung @ 28.03.2009. 01:09 ] @
Kako si pochetnik, zaista morash chitati sve napisano od pochetka do kraja sa razumevanjem. Poruka o greshci jasno govori u chemu je stvar: Unknown column 'on_special' in 'where clause' - ne postoji kolona on_special u tabeli products.
[ stefic_kg @ 28.03.2009. 01:44 ] @
OK. ovo prvo sam ispravio.

Ali i dalje kad udjem na bilo koji link izbacuje ovu gresku:
Code:
Forbidden

You don't have permission to access /mymarket/< on this server.
[ stsung @ 28.03.2009. 01:51 ] @
Najverovatnije pogreshno podeshen web server - pretpostavljam apache. Potrebno je da pogledash detaljniju poruku o greshci u error_log fajlu kako bi se utvrdilo shta je konkretno problem.
[ stefic_kg @ 28.03.2009. 02:11 ] @
Koliko sam ja provalio mislim da je problem sa funkcijom include().

Evo na primer: Imam fajl index.php u kome pozivam aplication.php:
Code:
  include("application.php");
i ovo je ok!

Ali kad trebam da pozovem u fajlu index.php (koji se nalazi na C:\wamp\www\mymarket) npr menu.php koji se nalazi na C:\wamp\www\mymarket\templates
kako to da uradim??? ne moze samo kao prethodno!!! probao sam ovako:
Code:
include("C:\wamp\www\mymarket\templates\menu.php");

[ Nemanja Avramović @ 28.03.2009. 10:03 ] @
Probaj ovako:

Code:
include('templates/menu.php');
[ stefic_kg @ 28.03.2009. 12:31 ] @
Nece ni ovako. Mada moram da NAPOMENEM da je fajl koji ja ucitavam aplication.php ima putanju:C:\wamp\www\mymarket\aplication.php
A fajl u kome ucitavam ima putanju: C:\wamp\www\mymarket\admin\index.php

Evo izvestaja iz Apache error log:
1). kad postavim ovako: --- include("c:/wamp/www/mymarket/aplication.php");

Code:
[error] [client 127.0.0.1] (20024)The given path is misformatted or contained invalid characters: Cannot map GET /mymarket/%3C?php=$CFG-%3Ewwwroot?%3E HTTP/1.1 to file, referer: http://localhost/mymarket/


slicno pokazuje kad postavim samo: --- include('aplication.php'); --- ili --- include("aplication.php"); --- ili --- include('C:/wamp/www/mymarket/aplication.php');



[ Man-Wolf @ 28.03.2009. 13:10 ] @
A da probas ovako:

Code:

include ('../application.php');


Mnogo ga komplikujes sa punim putanjama i pritom, to ce raditi samo na tvom racunaru (aj da se ogranicim - u 99% slucajeva ce raditi na tvom racunaru, onaj 1% ostavljam za neke super situacije, gde bi se potrefilo da bude ista putanja i na nekom drugom serveru ....)
[ stefic_kg @ 28.03.2009. 13:29 ] @
To sam prvo probao... ali nije htelo da radi... pa sam pokusavao sa konkretnom putanjom... ali ni tako ne ide...
Nemam poima sta moze da bude...
Evo ima izbacuje i ovu gresku kad kliknem na shopping link:
------------------------------------------------------------------------------------------------------------
Warning: include(../aplication.php) [function.include]: failed to open stream: No such file or directory in C:\wamp\www\mymarket\shopping\index.php on line 19
Warning: include() [function.include]: Failed opening '../aplication.php' for inclusion (include_path='.;C:\php5\pear') in C:\wamp\www\mymarket\shopping\index.php on line 19
Fatal error: Call to undefined function setdefault() in C:\wamp\www\mymarket\shopping\index.php on line 21
---------------------------------------------------------------------------
a u liniji 19 stoji: include('../aplication.php');
linija 21: setdefault($id, 0);

[ Man-Wolf @ 28.03.2009. 16:27 ] @
Malo glupo pitanje, ali primetio sam nesto:

Ti pises:

Code:

include ("../aplication.php"); // Sa jednim P (aplication)



A da se fajl ne zove slucajno "application.php" - sa dva P ? Odnosno, trebalo bi:

Code:

include("../application.php");

[ Nikola Poša @ 28.03.2009. 17:56 ] @
Aj probaj i ovako:
Code:

define('BASE_PATH', dirname(__FILE__) . '/');

include_once(BASE_PATH . 'templates/menu.php');

Mada ne verujem da će to da ima ikakvog efekta...
[ stsung @ 29.03.2009. 13:57 ] @
Kao shto ti rekoh u pochetku, zaista morash da pazhljivo chitash sve ispisano i sa razumevanjem. Ako greshka kazhe da fajl ne postoji, to znachi: fajl ne postoji. Potrebno je da proverish ime fajla i putanje. Ako ti kazhe "Call to undefined function setdefault()" to znachi tachno to: nedefinisana funkcija, iliti funkcija ne postoji.
[ stefic_kg @ 30.03.2009. 12:01 ] @
Ne verujem.... ja sam pri kucanju prvi put stavio aplication.php umesto application.php!!! I onda sam to kopirao ne pimetivsi gresku.... HVALA Man-Wolf.
ali i posle ove isoravke sajt i dalje ne radi, tj proradio je deo, shopoing page, i to samo ketegorije iz baz sa parent_id=0. sve ostalo ne radi. I dalje izbacuje gresku:

[error] [client 127.0.0.1] (20024)The given path is misformatted or contained invalid characters: Cannot map GET /mymarket/%3C?php=$CFG-%3Ewwwroot?%3E HTTP/1.1 to file, referer: http://localhost/mymarket/

@stsung:
Citat:
stsung: Kao shto ti rekoh u pochetku, zaista morash da pazhljivo chitash sve ispisano i sa razumevanjem. Ako greshka kazhe da fajl ne postoji, to znachi: fajl ne postoji. Potrebno je da proverish ime fajla i putanje. Ako ti kazhe "Call to undefined function setdefault()" to znachi tachno to: nedefinisana funkcija, iliti funkcija ne postoji.

Citam ja pazljivo... i razumem sta pise... Ali.. FAJL POSTOJI! i kao sto vidis pokusavam da podesim putanju... posto mi ime nije bilo ni na kraj pameti da je pogresno... (tj, da sam ja pogresno napiao) ali to sam otklonio... zahvaljujuci Man-Wolfu. I naravno funkcija postoji... i definisan je..
Code:

function setdefault(&$var, $default="") {
    if (! isset($var)) {
        $var = $default;
    }
}

Toliko od mene za sada...
pozz
[ stsung @ 30.03.2009. 12:58 ] @
Heh - pa vidi to je malo stvar perspektive kako gledash - fajl NE POSTOJI, jer nisi naveo ispravno ime fajla. Da fajl postoji, onda se ne bi bunio da ne postoji. Verujem ja da fajl fizichki postoji, ali ti morash da ispravno navedesh ime fajla i putanju, a ne da kukash kako ti nishta ne radi, kao da je PHP kriv zato shto ti prijavljuje ispravnu poruku o greshci a ti si taj koji nije ispravno napisao putanju. Zaista je stvar elementarna, ako ti PHP prijavi da fajl ne postoji, onda ne postoji, a ako taj neki fajl imash fizichki na disku onda znachi da PHP ne mozhe da mu pristupi najverovatnije zato shto ti nisi naveo ispravnu putanju/ime, a tu ti nije kriv php. Zbog ovoga ti kazhem da morash da chitash poruke sa razumevanjem.

Za ovu setdefault(), nije mi jasno da li je resheno ili ne, ali ako ti prijavljuje da funkcija ne postoji - onda ne postoji. Opet ista pricha, verujem ja da postoji fizichki u nekom fajlu - ali da li je taj fajl uopshte startovan/includovan?

Ovo "/mymarket/%3C?php=$CFG-%3Ewwwroot?%3E" ... opet je veoma elementarno, a potrebno da pogledash malko bolje na shta ovaj URL lichi. URL pochinje sa /mymarket/<?php=$ shto je sve samo ne normalno, zashto bi imao "<?php" u URL-u kada to pripada PHP skripti koja bi trebala biti izvrshena - za ovo vec morash da pronadjesh tachnu lokaciju gde je problem. Kreni polako da trazhish, od pochetka, deo po deo - morash se malo potruditi. Odakle zovesh taj link, gde klikcesh na njega, pa nadji deo koda koji generishe takav link i vidi zashto je takav.
[ stefic_kg @ 30.03.2009. 14:03 ] @
@stsung
Dobro... Slazem se sa tobom.. stvar perspektive, kako gledas... Shvatio sam odmah sta si hteo da kazes ali hvala na iscrpnom odgovoru.
Citat:
stsung:
URL pochinje sa /mymarket/<?php=$ shto je sve samo ne normalno, zashto bi imao "<?php" u URL-u kada to pripada PHP skripti koja bi trebala biti izvrshena - za ovo vec morash da pronadjesh tachnu lokaciju gde je problem. Kreni polako da trazhish, od pochetka, deo po deo - morash se malo potruditi. Odakle zovesh taj link, gde klikcesh na njega, pa nadji deo koda koji generishe takav link i vidi zashto je takav.

Ovo sam i ja pretpostavio, ali sam mislio da neko ko ima dosta iskustva zna sta je odmah u pitanju, posto i sam kazes da je ovo elementarna stvar... ali dobro sad cu da zasucem rukave i krecem polako sa radom.... hvala u svakom slucaju.

[ stsung @ 30.03.2009. 15:00 ] @
Informacije su jako oskudne da bi ovde mogli neshto reci - da si prikachio source fajlove bilo bi elementarno pronaci problem, no ipak se ti prvo morash potruditi pa zatrazhiti pomoc ako bash ne ide. Sve shto imamo je URL koji u sebi ima ko zna odakle zalutali PHP kod ... deluje kao neki string za eval() koji nije eval()-ovan pa u URL ushao takav kakav je ... teshko je reci bez uvida u deo koda koji generishe takav link.
[ Man-Wolf @ 30.03.2009. 18:50 ] @
@stefic_kg - Nista Te male greske su najgore i najteze se nalaze

Elem, ako sam dobro primetio, tebi se javlja greska kad sa index.php stranice, pozoves neku drugu (koja stvarno cudno izgleda ). Ostavi kod on index.php -a (ako nije predugacak). Ako je predugacak, ostavi delove gde radis preusmeravanje na tu stranicu (pretpostavljam preko Header() funkcije) ili okaci ceo fajl uz poruku ... ;-)

Btw, sto se tice ove funkcije set_default, mozda nije greska (stvarno nisam siguran), ali za svaki slucaj stavi umesto:

Code:

function setdefault(&$var, $default="") {
    if (! isset($var)) {
        $var = $default;
    }
}

// Ovako: 

function setdefault(&$var, $default="") {
    if (!isset($var)) {
        $var = $default;
    }
}


Pozdrav !
[ stefic_kg @ 16.04.2009. 20:56 ] @
Nije me bilo neko vreme ovde, pa samo da javim da sam resio problem.... i da se jos jednom zahvalim svima na pomoci... ;)
Hvala i pozz
[ Nemanja Avramović @ 17.04.2009. 09:37 ] @
Sad bi bilo lepo da kažeš u čemu je bio problem, za slučaj da se neko susretne sa sličnim problemom
[ stefic_kg @ 17.04.2009. 11:05 ] @
1) nije bio dobro podesrn srever... tj imam kod u fajlu application.php:

Code:
 $CFG->wwwroot     = "http://localhost/eprodavnica"; 

// moja greska: ja sam iskopirao sve fajlove i direktorijume u direktorijum www (tj. localhost),
// a trebao sam da napravim direktorijum eprodavnica pa u njemu da iskopiram te fajlove, ili da napisem:
Code:
$CFG->wwwroot     = "http://localhost";



2) na faxu sam dobio pogresnu verziju u kojoj nije postojalno 2 fajla sa nekim standardnim funkcijama u direktorijumu lib,
ali ovo sam tek video kad sam ispravio ono pod 1), tako da sam tek pre neki dan dobio novu verziju mymarketa...

Ukratko to je bio problem u mom slucaju.
[ TRAJKO41 @ 24.08.2009. 14:37 ] @
kada otvorim localhost pa mymarket na serveru

pojavi mi stranu

templatedir/header.php"); ?>
Hello and welcome to MyMarket! This is the homepage, web masters, use this area:

* Provide a basic map of the site
* Advertise your on-sale items
* Welcome customers to your site
* Do useful things

To begin shopping, go to the shopping page or buy the on-special items to your right. Your shopping cart is always visible on the left side of your screen. Click it to edit the contents of your basket or to check out.
templatedir/footer.php"); ?>


i kad kliknem go to the shoping page


ono mi izbaci sledece

templatedir/header.php"); include("templates/catalog.php"); include("$CFG->templatedir/footer.php"); /****************************************************************************** * FUNCTIONS *****************************************************************************/ function get_sub_categories($id=1) { /* get the name and description of all the sub-categories under this one */ $qid = db_query("SELECT id, name, description FROM categories WHERE parent_id = $id AND id > 1"); return $qid; } function get_products($category_id=1) { /* get all the products under this category */ $qid = db_query(" SELECT p.id ,p.name ,p.description ,p.price ,p.on_special ,pc.category_id FROM products p ,products_categories pc WHERE p.id = pc.product_id AND pc.category_id = $category_id "); return $qid; } ?>

ne znam u cemu je stvar


zna li neko nesto o tome