SQL adatbázisból lehívás...nem tudom mi a hiba
Hello!
Amikor egy felhasználó által feltöltött képet akarok akarok megjeleníteni egy weblapon (most éppen a fórumban), akkor nem jelenik meg a kép, pedig az elérési út jó! Tapasztaltam, hogy olyan kép, amit nem az SQL adatbázisból hívok le, az viszont megjelenik a lapon.
Itt a script lényeges része:
$i = 1;
while ($user_tomb = mysql_fetch_array($user_lekerd_eredm)) {
$login_tomb[$i] = $user_tomb['login'];
$kep_tomb[$i] = $user_tomb['image'];
$i++;
}
...
if ( $hsz_bekuldoje == $login_tomb[$i] ) {
$kep_kiir=$user_images_feltolt_path ."/" .$kep_tomb[$i];
$i = $z;
} else {
$kep_kiir=$user_images_feltolt_path ."/nemreg.jpg";
}
Miért van, hogy az SQL adatbázisból vett kép nem jelenik meg, mikor jó az elérési útja?
Online látható a probléma ezen az oldalon: http://users.atw.hu/...m/temalista_link.php
(bármelyik témára kattintva)
Danci
■ Amikor egy felhasználó által feltöltött képet akarok akarok megjeleníteni egy weblapon (most éppen a fórumban), akkor nem jelenik meg a kép, pedig az elérési út jó! Tapasztaltam, hogy olyan kép, amit nem az SQL adatbázisból hívok le, az viszont megjelenik a lapon.
Itt a script lényeges része:
$i = 1;
while ($user_tomb = mysql_fetch_array($user_lekerd_eredm)) {
$login_tomb[$i] = $user_tomb['login'];
$kep_tomb[$i] = $user_tomb['image'];
$i++;
}
...
if ( $hsz_bekuldoje == $login_tomb[$i] ) {
$kep_kiir=$user_images_feltolt_path ."/" .$kep_tomb[$i];
$i = $z;
} else {
$kep_kiir=$user_images_feltolt_path ."/nemreg.jpg";
}
Miért van, hogy az SQL adatbázisból vett kép nem jelenik meg, mikor jó az elérési útja?
Online látható a probléma ezen az oldalon: http://users.atw.hu/...m/temalista_link.php
(bármelyik témára kattintva)
Danci
Magát a képet adatbázisba
Bízzál Istenben és tartsd szárazon a puskaport!" -Cromwell
A képek egy mappában
szerintem kap a linked egy
trim() a te barátod.
engem is megszívatott pár hónapja :)
Bízzál Istenben és tartsd szárazon a puskaport!" -Cromwell
Valami bibi van a linkeddel,
debug, hibakeresés
Köv lépés: ha direkt írod be a címet akkor betudja-e hozni a képet a böngésző.
Ha rájöttél, hogy nem írja ki jól a kép címét akkor elkezdhetsz a kép címének előállításának szakaszaiba, a PHP-ba echo-kat rakni, amik kíirják neked, hogy éppen mi van abban a változóban, lefut-e egy ciklus, visszaad-e egyáltalán valamit az adatbázis stb.
Egy ilyen kódrészletből nem derül ki egy idegen számára semmi, így csak találgathat, hogy mi lehet a hiba.
Ne hari, de a lényeges
A hibakeresés már megvolt részletesen (kiírogatás, változók tartalmának összeállítása helyesen, stb.), az egyedüli ami még nem volt, az, hogy a kép címét írom a böngészőbe. Mikor ezt megcsináltam, a következőt írta:
Nincs jogosultság a lap megtekintéséhez
Valószínűleg ez lehet a probléma, de ez miért lehet? (nincs levédve semmilyen módon a mappa, amiben a képek vannak, azok nem írásvédettek és semmi ilyesmi)
Amiket meg akarok jeleníteni, azok GIF fájlok. Ezzel is lehet esetleg valami probléma? Mert egy kép van ami megjelenik, az meg JPG. Na meg azt direkt hívom meg, nem SQL adatbázisból (ahogy fenn is látható).
Az igazi URL: http://gytk.atw.hu/includes/forum/temalista_link.php (bármelyik témára kattintva)
Jogok
Attila
Nekem fogalmam sincs! Azt
Danci
Re
644
vagy vmi ilyesmit kéne mutatnia:rw-r--r--
a fájlok neve mellett, de Fájl menü -> Attribútumok módosításával tudod is állítani. Vagy próbáld ki azt, hogy beírod:chmod 644 egyikkepneve.gif
ezután megnézed, hogy az a kép megjelenik-e.Attila
Nagyon, nagyon szépen
Közben regisztráltam:)
Még 1 kérdés: Hogy tudom a php fájlban, akkor amikor a felhasználó feltölti a képet scripttel megváltoztatni az attribútumokat erre a 644-re megváltoztatni?
Az jó, hogy mikor feltölti a képet, akkor egy ilyen script:
if (is_uploaded_file($_FILES['feltoltes']['tmp_name'])) {
$user_images_feltolt_path='images';
$image_path = $user_images_feltolt_path . "/" . $_FILES['feltoltes']['name'];
//print "útvonal: " . ($image_path) . "| ";
move_uploaded_file($_FILES['feltoltes']['tmp_name'], $image_path) or die ("Nem sikerült az áthelyezés!");
chmod ($image_path,0644);
print "A kép feltöltése sikeresen befejeződött!<br>";
}
------------------------------------------------------------------
Mindenki a hegytetőn akar élni, anélkül hogy tudná, hogy a boldogság a meredély megmászásában rejlik...
Megoldódott:) Jó, ahogy
------------------------------------------------------------------
Mindenki a hegytetőn akar élni, anélkül hogy tudná, hogy a boldogság a meredély megmászásában rejlik...
MySQL CONCAT_WS, CONCAT nem megy
Problémám a következő:
Ha ez a lekérdezés egy PHP scriptben szerepel - persze megfelelő függvényben, akkor hibát kapok, ha tök ugyanezt phpMyAdminba másolom, és végrehajtom, akkor működik. Ugyanaz a gép, uaz az sql szerver, uaz a PHP, egyik helyen megy, a másikban meg nem.
Na, a fenti viszont mindkét helyen megy.
Na, ez sem megy, szóval az egyszeres idézőjel (') körül van vmi gond, de mi?
Tud vki megoldást?
MySQL 4.1.3b-beta-nt
phpMyAdmin 2.6.2-pl1
PHP Version 4.3.8
Köszi:
P][G
Karakter kódolás!!!
CONVERT(' ' USING utf8)
Már ha ez a kódolásod...
vagyis:
SELECT CONCAT_WS(CONVERT(' ' USING utf8),ugyfel_veznev,ugyfel_kernev) AS nev FROM ugyfelek WHERE ugyfel_id='2'
Én is jót szórakoztam a problémával annak idején! :-)
Üdv
Zoli
Köszi a választ!
Szóval a hexadecimális kódot beírva (idézőjelek nélkül) megy.
Azért köszi!
P][G