KGigi Posted May 8, 2009 Posted May 8, 2009 Hiába választod ki a mappát, a gyökérbe másolja fel, vagy nem listázza megfelelõen a könyvtárakat?
arpsoft Posted May 8, 2009 Posted May 8, 2009 Az isset-et egészítsed ki egy isnull viszgálattal és megjavul szerintem.
Adani Posted May 13, 2009 Posted May 13, 2009 Elakadtam megint az adatbázis kezelésnél. Van egy php-ban írt oldal, ami Oracle adatbázishoz kapcsolódik és onnan különbözõ dolgokat kérdez le. Van egy oldal, ahol be lehet jelentkezni, felhasználói név, jelszó, adatbázis, azt, hogy mit csináljon rádiógombokkal lehet kiválasztani ( melyik lekérdezést futtassa le switch case-el lekezelve). Eddig mûködik is a dolog, a bejelentkezõ ablaknál ugye form mûködik, ami továbbítja az adatokat POST metódussal a másik php-nak, ami kezeli. A gond ott van, hogy szeretném megcsinálni, hogy miután belépett az adatbázisba és lefutott a lekérdezés, ami megjelent az oldalon ( táblázatos formában), legyen lehetõség anélkül másik lekérdezést futtatni benne, hogy ne kellejen ismét visszamenni a bejelentkezõ oldalra és újra bejelentkezni. Úgy próbáltam meg, hogy a rádiógombokat kitettem az eredmény oldalra is egy form-ban amit ismét elküld az eredmény oldalra, de így nem mûködik, pontosabban igen csak üres lekérdezést kapok, mert a név-jelszó,adatbázis értékek eltûntek. Nincs erre valami megoldás? Az adatokat változókban tároltam miután kiolvastam a POST-ból így: $login = $_POST["login"]; $pass = $_POST["pass"]; Mégis az eredmény oldalon lévõ form futtatása után nem tud ezekkel bejelentkezni.
Adani Posted May 13, 2009 Posted May 13, 2009 Kb. hogyan kéne csinálni, mert sessionkezeléshez egyáltalán nem értek. A bejelentkezõ oldalon session_start()-al elindítom az még ok. A többi oldalon is el kell indítani? Tegyem be a változóimat a a $_SESSION tömbbe?
hungery79 Posted May 13, 2009 Posted May 13, 2009 Hiába választod ki a mappát, a gyökérbe másolja fel, vagy nem listázza megfelelõen a könyvtárakat? Kilistázza, azzal nincs baj, de hiába választom ki, a gyökérbe másolja fel.
arpsoft Posted May 13, 2009 Posted May 13, 2009 @Adani: látod, hogy megy ez! Igen, minden oldalon kell session_start, és igen, tedd be a változóidat a _SESSION tömbbe. @hungery79: most látom, hogy a $ut-ból hiányzik egy '/' a könyvtárnév és a fájlnév közül. Így most feltölti a gyökérbe olyan néven, hogy könyvtárfileneve.jpg, holott Te azt szeretnéd, hogy gyökér/könyvtár/fileneve.jpg
Adani Posted May 13, 2009 Posted May 13, 2009 @Arpsoft Azokba is, amiket include-al hívok meg? Mindjárt kipróbálom hogyan szuperál, köszi a segítséget, talán így már menni fog. UI: Nem működik. Minden php elejére tettem session_start()-ot, áttettem a változóimat is a $_SESSION-ba és mégse megy. Mit ronthattam el?
payskin Posted May 13, 2009 Posted May 13, 2009 Azokba is, amiket include-al hívok meg? Nem. Csak azokba tedd bele, amik egy különálló weboldalt építenek fel. Az include-ok nem különálló weboldalak, hanem az éppen felépülő oldaladnak a részei. Általában úgy szokták csinálni, hogy van egy olyan alap konfig file, ami minden fontosabb inicializálást elvégez, és ezt szokták elsőként behúzni require-rel minden oldal elején. Ebben kell elindítani a sessiont is. Mondjuk van egy kukutyinozós weboldalam (kukutyin.php) meg egy zabhegyezős (zabhegyez.php), amik mindenféle egyéb include-okat hívnak meg. A lényeg, hogy mindkettő így kezdődik, hogy <?php require ("nagyon fontos, alap konfig fájl elérési újta"); ... ... ... ?> és utána meg mehet a móka attól függően, hogy most épp kukutyinozunk vagy zabhegyezünk.
Adani Posted May 14, 2009 Posted May 14, 2009 Még mindig nem akar működni. Így néz ki a dolog: <?php session_start(); include('connect.php'); echo '<form action="pdrg006.php" method="post">'; echo 'Felhasználó név: <input type="text" name="login" />'; echo 'Jelszó: <input type="password" name="pass"/>'; echo 'Adatbázis: <input type="text" name="adatb" />'; echo '<br>'; echo '<input type="radio" name="lekerdez"'; echo 'value="lock">Lockolt Táblák</input>'; echo '<br>'; echo '<input type="radio" name="lekerdez"'; echo 'value="tspace">Tábla terek</input>'; echo '<br>'; echo '<input type="radio" name="lekerdez"'; echo 'value="invalid">Invalid</input>'; echo '<br>'; echo '<input type="submit" />'; echo '</form>'; ?> Ez a bejelentkező oldal formmal. Ez pedig a választós: <?php session_start(); include('connect.php'); echo '<br>'; echo '<form action="pdrg006.php" method="post">'; echo '<input type="radio" name="lekerdez"'; echo 'value="lock">Lockolt Táblák</input>'; echo '<br>'; echo '<input type="radio" name="lekerdez"'; echo 'value="tspace">Tábla terek</input>'; echo '<br>'; echo '<input type="radio" name="lekerdez"'; echo 'value="invalid">Invalid</input>'; echo '<br>'; echo '<input type="submit" />'; echo '</form>'; switch ($lekerdez) { case 'lock': include('pdrg001.php'); break; case 'tspace': include('pdrg004.php'); break; case 'invalid': include('pdrg007.php'); break; } A connect.php, ami az adatbázishoz kapcsolódást végzi el: <?php $login = $_POST["login"]; $pass = $_POST["pass"]; $adatb = $_POST["adatb"]; $lekerdez = $_POST["lekerdez"]; $_SESSION[login]=$login; $_SESSION[pass]=$pass; $_SESSION[adatb]=$adatb; $_SESSION[lekerdez]=$lekerdez; $conn = oci_connect($login,$pass,$adatb ); ?> A kommenteket és pár egyéb felesleges dolgot kivettem (pl. háttér beállítást). Csak a bejelentkezőbe és a választósba tettem session_start()-ot.
arpsoft Posted May 14, 2009 Posted May 14, 2009 Most látom, alapvetõ hiba van. A $_SESSION-be csak akkor szabad beleírni a bejelentkezõs form adatait, ha onnan jössz, különben, mivel nincs login nevû mezõd üres lesz és törli az elõzõleg tárolt adatokat. Két megoldás van: 1. kettébontod a connect.php-t 2. a lekérdezõs form-ba hidden mezõkbe berakod a session-ben tárolt adatokat
Adani Posted May 14, 2009 Posted May 14, 2009 Mûködik, kösz mindenkinek a segítséget, Arpsoft második megoldása mûködik.
Atys Posted May 15, 2009 Posted May 15, 2009 Sziasztok! Itt ez a kódrészlet és nem akar működni, parse error-t ír ki az else sorra. Ha nincs az else ág, akkor tökéletes. Sajna nincs ötletem, hogy mi lehet a gond. while ($egy_sor = mysql_fetch_array($eredmeny) ) { print "<p>"; print "<a href='http://".$egy_sor['www']."'>".$egy_sor['www']."</a><br />"; print "<script type=\"text/javascript\" language=\"javascript\"> name=('".$egy_sor['email1']."'); at=('@'); domain=('".$egy_sor['email2']."'); dot=('.'); ext=('".$egy_sor['email3']."'); document.write('<a href=\"mailto:' + name + at + domain + dot + ext + '\">' + name + at + domain + dot + ext + '<\/a><br />'); </script>"; print "</p>"; } else { print "nincs adat"; }
arpsoft Posted May 16, 2009 Posted May 16, 2009 A while-nak nem lehet else ága! Ez egy ciklus szervezõ utasítás és nem elágazás.
Atys Posted May 16, 2009 Posted May 16, 2009 Köszi a megerõsítést! Én is erre gondoltam, de neten utánanézve a dolognak sok helyen láttam ezt a megoldást. Már azt hittem én nem tudom jól.
vagyula1 Posted May 18, 2009 Posted May 18, 2009 Segítséget szeretnék kérni az apache+php telepítésével kapcsolatban. Feltelepítettem az apache-ot, és természetesen piros volt a lámpa és ezt a hibaüzenetet kaptam: Tudna nekem segíteni abban h mi lehet a hiba? Érzésem szerint minden úgy csináltam ahogy le van írva, többször átnéztem.
arpsoft Posted May 18, 2009 Posted May 18, 2009 Valami probléma van a php.ini 567. sorában. Be tudnád ide vágni?
vagyula1 Posted May 18, 2009 Posted May 18, 2009 (edited) Csak estefelé, de megnéztem ini editorral, és úgy láttam nincs is annyi sor. De este megnézem. Szal itt lenne: 566. ; Define the anonymous ftp password (your email address) 567. ;from="john@doe.com" 568. 569. ; Define the User-Agent string Edited May 18, 2009 by vagyula1
payskin Posted May 19, 2009 Posted May 19, 2009 Nálam kicsit más van a php.ini-ben ezen a területen: 565: 566:; Default timeout for socket based streams (seconds) 567: default_socket_timeout = 60 568: 569:; If your scripts have to deal wi Ez, ha minden igaz, egy 5.2.8-as verzió. Viszont ez a a php.ini-nek az a része, amit nem kell piszkálni, ezért sem értem.
vagyula1 Posted May 19, 2009 Posted May 19, 2009 Nekem az 5.2.9.2 van fönt. Este leszedem és kipróbálom a korábbi verziót.
Adani Posted May 19, 2009 Posted May 19, 2009 Megint elakadtam egy ponton. SQL lekérdezést kell beadagolnom eg php-nak ,de ' jel is van benne, emiatt nem akar működni. Hogyan tudom beírni egy stringbe az ' jelet (ugye azt hiszi, hogy vége van a stringnek)?
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now