ugrás a tartalomhoz

Archívum - Feb 2007 - Fórum téma

február 26

SESSION tartalmának egyeztetése egy adatbázissal, csak mégsem jó

MSzilveszter · 2007. Feb. 26. (H), 20.20
Leegyszerűsítve a probléma:
Adott egy adatbázis, amiben tárolunk képeket, egy sor egy kép formában, és a képeket hozzárendeljük egy másik elemhez, mondjuk egy íráshoz.
A felhasználó épp módosítja az írás képeit, tehát a listát, ami a db-ben van, frissíteni kell. NEvezzük a dbből jövő tömböt nem frankónak($array_kep). Ez mellet van egy olyan tömbünk($_SESSION['KEPEK'], ami meg a frankó elemeket tartalmazza.
Cél, hogy a dbben a művelet végén csak a frankó elemek legyenek, ha elötte nem volt, akkor beszúrni, ha elötte már volt, de nem kell már, akkor törölni a sort.

Ezzel a forráskóddal próbálkoztam:
[CODE]
$kepek_uj = $_SESSION['KEPEK'];
$kepek_uj_ = explode('#', $kepek_uj);
//megnezem, melyik kell, melyik nem az eredetiek kozul
//AZ ADATBAZISBAN LEVO SOROK LEKERESE --- KEPEK
$sql = "SELECT kep_link FROM db WHERE azonosito='".$_SESSION['azonosito']."' ORDER BY id ASC";
$query_kep = @mysql_query($sql, $connect_cpad);
if($query_kep != false)
{
echo('sikeres lekeres<br>');
$array_kep = mysql_fetch_array($query_kep);
}
//nemletezo beszurasa
echo('a db-ben vannak: '); print_r($array_kep); echo'<br>';
$i=1;
while($kepek_uj_[$i] != false)
{
echo('nem letezo beszurasa - '.$i.'<br>');
$kepek_maradni = array_search($kepek_uj_[$i], $array_kep);
if($kepek_maradni === null)
{
echo('ha kepek_maradni === null ez tortenik<br>');
//insert db
$sql_insert = "INSERT INTO db (cikk_id, kep_link) VALUES ('".$_SESSION['azonosito']."', '".$kepek_uj_[$i]."')";
$querty_insert = @mysql_query($sql_insert);
if($query_insert == false) echo('hiba az inserttben!<br>');
else echo('kep feltoltve db-be<br>');
}
else echo('ha kepek_maradni nem null, akkor tortenik ez.');
echo('<br>kepek_maradni: '.$kepek_maradni.' kep_sessionben: '.$kepek_uj_[$i].'<br><br>');
$i++;
}

//letezo de nem kell
$i=0;
echo'a sessionban vannak: '; print_r($kepek_uj_); echo('

Joomla Getswider template probléma IE7-ben

szolarisz · 2007. Feb. 26. (H), 18.42
Sziasztok!

Az a gondom, hogy csinálgatok egy oldalt a barátomnak. Még most kezdtük, és mivel Joomla van alatta, gyorsan is haladtunk.
A gond az, hogy a kiválasztott template minden eddigi böngészőben jól jelenik meg, kivéve IE7 alatt.
Ott a függőleges középső részt egyáltalán nem jeleníti meg és a menücsoportok sem jelennek meg mind.

Valami CSS hiba van benne biztosan, de egyáltalán nem vagyok annyira szakértő, hogy rájöjjek mi lehet a gond.

Az oldal, hogy lássátok miről beszélek: http://showbike.hu
Remélem tudtok segíteni!
Előre is köszönöm!

Sz.
 

FTP link, ami be is jelentkezik?

konoko · 2007. Feb. 26. (H), 11.47
Sziasztok.

Lenne egy olyan kérdésem hogy hogy tudok egy ftp bejelentkezésre hivatkozó linket létrehozni?
Válaszotok előre is köszi.

Üdv.: konoko
 

Whitespace karakterek mysql-ben

breakline · 2007. Feb. 26. (H), 01.52
Sziasztok

Szeretnék egy TEXT mezőben 'szöveghűen' tárolni egy szöveget, ami annyit jelent hogy minden karaktert pontosan ugyanúgy kellene visszakapni, de nem tudom rávenni a mysql-t hogy a szöveg végén levő 81 space karaktert is tárolja (levágja). Úgy oldottam meg, hogy lecseréltem egy másik karakterre a bemenetkor, amit visszacserélek space-re a kimenetkor, de ez nagyon barkács, és nem találtam semmit erről a mysql docban.
Ha van ötletetek nyugodtan osszátok meg.:)


kösz
BL
 

február 25

PHP DOM és a DTD

Joó Ádám · 2007. Feb. 25. (V), 19.42
Hosszas keresgélés után sem sikerült rájönnöm, hogy is kellene a PHP DOM-ot használva kiíratnom az XHTML DTD-t az oldalra. Se a manuál, se a Google nem ad használható információt.
Valaki?
 

február 25

Adatösszerendelés

gtoma · 2007. Feb. 24. (Szo), 23.20
Sziasztok!

Egy érdekes problémám lenne!

Az egyszerűsített változatot mondom.

Adatbázisban tárolok adatokat. Vannak rovataim. a rovatoknak vannak változó számú tulajdnoságai, a tualjdonságoknak változó számú értékei. (külön táblában vannak természetesen)

Pl: mobiltelefon rovat: van gyártója (a gyártókkal), van típusa (a tipusokkal), és színe (színekkel).

Szeretnék minden tulajdonságot, minden más tulajdonság értékével összerendelni, de nem tudom előre, hogy hány tulajdonsága van a rovatnek, és azt sem hány értéke van 1 tulajdonságnak.

példa az összerendelt sztringekre:

-mobiltelefon_nokia_6110_fekete
-mobiltelefon_nokia_6110_piros
-mobiltelefon_nokia_6220_fekete
-mobiltelefon_nokia_6220_piros


Ezt kellene kapnom minden rovatra.

Próbálkoztam 1-2 dologgal de sajnos nem sikerült a megfelelő megoldást megtalálnom.

Van 5letetek hogy milyen trükkel lehetne ezt megoldani?

thx.


ui: bővített változat: (ezeknek kellenek az azonosítói is, mert link lesz belőle, és azt adom át GET-ben ami meg lekérdezi az oda illő hirdetéseket)
 

PHP Triad .html kiterjesztést is kezelje PHP-ként

HTibi · 2007. Feb. 24. (Szo), 13.21
Hello Mindenkinek!

Segitség kellene egy beállításhoz. Kezdö vagyok a php-ban.
Letöltöttem és telepítettem a PHP Triad-ot Win98-ra. Müködik(legalábbis ugy látom) .html meg .php file-okat (phpinfo.php)rendesen mutatja a böngészö.
De ha egy html végü file-ba beteszek egy php kódot azt nem hajtja végre illetve csak a html rész jelenik meg. A PHP.net oldalon olvastam, hogy
a webszervert be lehet állítani úgy, hogy a PHP feldolgozzon minden HTML fájlt PHP blokkokat keresve
-gondolom ez lenne a megoldás az én gondomra csak azzal van a baj,hogy HOGYAN??? Elöre is köszönök minden segítséget!
 

Menu megjelenitese php fajlban

zoliky · 2007. Feb. 24. (Szo), 11.28
Van egy weblapom amelyen talalhato egy menu. A menu XHTML kodja a kovetkezo keppen nez ki:

<div id="menu">
	<ul>
		<li><a href="index.php" id="selected">Home</a></li>
		<li><a href="portofolio.php">Portofolio</a></li>
		<li><a href="sitemap.php">Site map</a></li>
		<li><a href="contactus.php">Contact us</a></li>
	</ul>
</div>
Ez a kod 4 fajlban szerepel (index.php, portofolio.php, sitemap.php, contactus.php).

Mi tortenik ha peldaul ki akarom szedni a "sitemap.php" oldalat a menubol? A problema az, hogy mind a negy XHTML fajlot ujra kell szerkeszteni. Ez borzaszto lesz idovel ha mindig valtozik a menu.

Gondoltam, hogy meg lehet oldani a problemat PHP hasznalataval, irok egy fugvenyt amelyet beolvasok minden HTML fajlban es meghivom.

A kodom a kovetkezo lenne:

<?php
function display_menu()
{
    $items = array(
        'index.php'     => 'Home',
        'portfolio.php' => 'Portfolio',
        'sitemap.php'   => 'Site map',
        'contect.php'   => 'Contact'
    );
    
    $request = basename($_SERVER['REQUEST_URI']);
    
    echo "<ul>\n";
    
    foreach ($items AS $filename => $item)
    {
        echo "\t" . '<li><a href="'. $filename .'"'. ($request == $filename ? ' id="selected"' : null) .'>'. $item .'</a></li>'. "\n";
    }
    
    echo "</ul>\n";
}  
?>
Mukodik elvileg de van egy kis gond. A basename($_SERVER['REQUEST_URI']); megkapja az oldal nevet. Ha peldaul igy nyitom ki az oldalt :

http://mywebpage.com/

Az apache szerver tudja, hogy letezik egy index.php fajl a konyvtarban de a basename($_SERVER['REQUEST_URI']) fugveny ezt nem tudja.

Van valami otlet, hogy lehet megoldani ?

Koszonom !
 

call_user_func + $this

kicsy · 2007. Feb. 24. (Szo), 01.40
Sziasztok!

Call_user_func függvénnyel hívok meg egy statikus osztály metódust PHP4-ben, egy objektumon belülről. Alapesetben, a ClassName::Method() módszert használva a meghívott metódusban a $this változó a meghívó objektumra fog mutatni, azonban a fenti függvényt használva a hívott metódusban nincs $this változó. Ez tény, meg is találtam a Zend-féle PHP levlistán a problémát, a válasz egy igen, ezt valóban ki kellene javítani volt - 4 éve.
A kérdésem az lenne, hogy van-e valami mód arra, hogy meghívjam egy dinamikus nevű osztály dinamikus nevű metódusát úgy, hogy abban a $this változó elérhető és a hívó objektumra mutat?
 

február 23

Elveszett változó

pora · 2007. Feb. 23. (P), 14.24
Sziasztok!

Ha valakinek van ötlete, szánjon meg, kérem szépen:

Van egy osszerak() függvényem, ami az első paraméterben megadott fájlban lecserél bizonyos szövegrészeket include(...)-okra (hogy futási időben mondhassam meg, mi kerüljön bizonyos oldalak bizonyos helyeire). A lecserélés eredményét egy fájlba írom, ennek a fájlnak a nevével tér vissza az osszerak(). A felhasználás után ezt a fájlt törlöm a takarit() függvénnyel.

Van egy kirak() függvényem, ami előbb összerakja a kimeneti fájlt, include-olja, aztán le is törli, így néz ki:
function kirak(){
	$tempfvalt = func_get_arg(1);
	$master = func_get_arg(0);
	include(osszerak($master, $tempfvalt));
	takarit();
}
Az első paraméter a cserék előtti fájl neve, a második a cseréket leíró tömb.

Ha ezt írom:
$user="GipszJakab";
$valt["hely01"]="hellouser.php";
include(osszerak("foo.html", $valt));
takarit();
akkor a foo.html "hely01"-gyel jelölt pontján kiírja, hogy "Hello GipszJakab!"

Ha ezt írom:
$user="GipszJakab";
$valt["hely01"]="hellouser.php";
kirak("foo.html", $valt);
akkor a foo.html "hely01"-gyel jelölt pontján kiírja, hogy "Hello !"

Vagyis elveszett a változóm!

Illetve mégsem, mert, ha ezt írom:
$user="GipszJakab";
$valt["hely01"]="hellouser.php";
kirak("foo.html", $valt);
echo $user;
akkor a foo.html "hely01"-gyel jelölt pontján kiírja, hogy "Hello !", majd a lap aljára kiírja, hogy "GipszJakab".

Szóval $user változó megvan, de a (kétszeresen) include-olt kódrész üresnek látja. De csak akkor, ha a kirak() függvénnyel hívom meg. Ha a kirak függvény belsejét írom oda, akkor rendben fut le.

A gond csak a kirak() függvény körül lehet, de egyszerűen elképzelésem nincs, mi ott a gond, hiszen csak továbbadom a paramétereket, amelyek között nem is szerepel a $user nevű változó.