ugrás a tartalomhoz

Egyik gépen jo a php a másikon nem...

Km4t3 · 2006. Aug. 22. (K), 19.18
Sziasztok!
Egy elég különleges kérdéssel fordulnék a fórum olvasóihoz.
Tehát az van, hogy van az én gépem amin tökéletesen megjelenik az oldal...
Van hawerom gépe, amin ugyanaz az oldal hibát ír ki a 82. sorban...
Ez minden süti és minden fájl/előzmények törlése után is megtörténik.
Ez a 82. sor:

$eredmeny = $db->sql_query("SELECT * FROM `apro_hir` ORDER BY id {$ord}"); 
de a többi oldalon ugyanez a kód jó...
és nem tudjuk, hogy mi a hiba... nála elő jön nálam nem..
Előre is köszi mindent!
 
1

Verzió?

Anonymous · 2006. Aug. 22. (K), 20.51
1, milyen verziójú php-k?
2, az $ord milyen változó? Mert ha eredetileg $_GET, akkor a egyik gépen a register_golbals off a másikon on.
3

asd

Km4t3 · 2006. Aug. 23. (Sze), 01.15
php 4 ről van szó
és tehát ez így nézne ki:

	if (!isset($MAX)) $MAX = 10;

	if (!isset($old)) $old = 0;
	if (!isset($ord)) $ord = "DESC";
	$sor = array();
	$eredmeny = $db->sql_query("SELECT * FROM `apro_hir` ORDER BY id {$ord}");
A $MAX-ban van az h egyszerre hány cuccot jelenítsen meg az oldalon az $old az h hanyadik oldalon legyen alapbol és az $ord meg a lekérdezést hogy mijen sorrendben tegye!
Előre is köszi
4

nem írtál semmit...

TeeCee · 2006. Aug. 23. (Sze), 07.33
Látom, az én válaszomra nem reagáltál, persze szíved joga hozzá :P

1.) nem mijen, hanem milyen!
2.) nem írtad meg a másik hozzászólónak, hogy az $ord, paraméterként van-e átadva... Ha igen, próbáld helyette a $_GET['ord'], vagy $_POST['ord']-ot használni, attól függően, hogy POST, vagy GET-a paraméter átadása.
3.) úgy érzem, mégiscsak paraméterként kapod az $ord-ot, ezért célszerű egy mysql_real_escape_string()-et ráereszteni az SQL-injection kivédésre
+1) A $MAX erre a lekérdezésre vonatkozik? Mert akkor rakhatod az SQL-ben LIMIT-be is, nem adja vissza az egész tábla tartalmáz, hanem csak annyit, amennyit szeretnél. (erőforráshatékonyság)
5

asd

Km4t3 · 2006. Aug. 23. (Sze), 12.16
ezt bebuktad és válaszoltam, csak törölték...
Amugy meg nem tudom h mi a ***-ért kötöszködsz álandoan, nemhogy inkább leírnád a kérdésemre a választ vagy ha nemtudod akkor inkább ne is írj...
mert semmi szükség rá hogy itt flegmázzál!
Köszi
7

re: asd

Hodicska Gergely · 2006. Aug. 23. (Sze), 13.24
Szia!


Ilyen esetekben próbálj meg elvonatkoztatni attól, hogy esetlegesen flegmának tűnik egy válasz (speciel ez szerintem nem is volt az). Ha figyelmesen elolvasod, akkor igenis benne volt a válasz, miszerint az URL-ből, vagy POST által kapott paramétereket a $_GET, $_POST tömbökön keresztül érd el, ugyanis register_globals off esetén nem fog működni a programod, mint ahogy a haverod gépén is erről van szó, és jóformán minden tisztességes install esetén. Fejlesztői gépeden is célszerű lenne kikapcsolni, különben még sok gondod lesz.

Ezenkívül kaptál még pár jótanácsot, amit szintén érdemes lenne átgondolnod a hőbörgés helyett, különben a programjaid törhetőek lesznek.


Felhő
9

off: Nem fogsz több választ kapni, ha így folytatod

Jano · 2006. Aug. 23. (Sze), 13.42
A hiba leirásod alapján sok minden lehet a hiba, ezért csak találgatni tudnak itt a segítőszándékú emberek. (Pl. jó lett volna ha pontos hibaüzenetet is leírod.) Nem kötözködnek, hanem próbálnak tippeket adni, hogy hol, merre keressed a hibát. A nem a problémát megoldó hozzászólásokból is rengeteget tanulhatsz, olvasd inkább el figyelmesen azokat! Ha így beszólsz valakinek egyből elszáll a segítőkészség mindenkiben.

Ezt azért ide írtam mert adataidnál letiltottad a kapcsolatfelvételt.
6

asd

Km4t3 · 2006. Aug. 23. (Sze), 12.20
$MAX az nem erre vonatkozik, mert végülis az egész tartalmát lekérdezem a táblának csak az azt határozza meg, hogy hány "hozzá" szólás / cucc jelenjen meg egy oldalon! Köszi a segítséget kipróbálom!
de még azt mindig nem értem hogy az én gépemen miért jo és a barátom gépén miért nem?!
8

LIMIT, OFFSET

Hodicska Gergely · 2006. Aug. 23. (Sze), 13.28
az egész tartalmát lekérdezem a táblának csak az azt határozza meg, hogy hány "hozzá" szólás / cucc jelenjen meg egy oldalon!

Ez elég rossz megoldás, használd a lekérdezésben a LIMIT, OFFSET paraméterket.


Felhő
2

nem különleges...

TeeCee · 2006. Aug. 22. (K), 23.30
Egy elég különleges kérdéssel fordulnék a fórum olvasóihoz.

Sajna nem különleges... Nem mondasz semmit a környezetről, sem a körülményről.
A "Nem megy a kocsim" tipikus esete, csak közlöd, hogy mi van a kesztyűtartóban.

Teendők:
0.) A php.ini-ben az error_reportingot tekerd E_ALL-ra, és látod a hibákat
1.) Nézd meg, hogy mindkét gépen van-e adatbázisszerver, létezik-e az adatbázis, létezik-e a felhasználó, létezik-e a megfelelő jogosultság, létezik-e a benne lévő adat, amit nem kapsz meg.
2.) Nézd meg, hogy a megfelelő adatbázis-kezelő a php.ini-ben engedélyezve van-e.
3.) Hasonlítsd össze a két php.ini-t, hogy stimmelnek-e a lényeges részekben.