ugrás a tartalomhoz

Archívum - 2006 - Fórum téma

június 30

Figyelmeztetés programozásos kérdés feltételekor

vbence · 2006. Jún. 30. (P), 00.04
Sziasztok!

Nagyon gyakori, hogy (kezdők) feltesznek egy kérdést, amire a 8. válasz után derül ki, hogy valamilyen alapvetően hibás (járatlan, túlbonyolított) elképzelés mentén haladnak, és csak most ütközik ki a dolog.

Mit gondoltok egy kis figyelmeztető szövegre (a szokásos, "keress rá, mielőtt új témát nyitnál" -hoz hasonlóan) az új kérdés feltevés előtt. (Elég lenne csak az ajax és php fórumokban). Valami ilyesmire gondolok:

Gyorsabban választ kaphatsz kérdésedre, ha nem csak magát a problémát írod le, hanem pár szóban a weboldal / webalkalmazás azon részét is felvázolnád, aminek részeként felmerült (a probléma környezetét). Így egy megoldhatatlan kérdésre is kaphatsz megkerülő ötleteket.


Vagy mittomén...
 

június 29

window.resizeTo hívásra "hozzáférés megtagadva"

Anonymous · 2006. Jún. 29. (Cs), 18.25
Sziasztok!

Adott ez a függvény:

function noresize() {
  var NS = (navigator.appName == 'Netscape') ? true : false;

  iWidth = (NS)?window.innerWidth:document.body.clientWidth;
  iHeight = (NS)?window.innerHeight:document.body.clientHeight;

  if ( (iWidth <= 510) || (iHeight <= 259) )
    window.resizeTo(510,259);
}
Ez a függvény - többek között - be van linkelve egy HTML állományba és az onLoad ill. onResize eseményekre hívódik meg. IE6-tal kéne mennie, de sajnos nem megy. A meghívás rendben megtörténik, de a window.resizeTo(510,259); végrehajtásánal a következő üzenettel leáll:

"A hozzáférés megtagadva."

Mit baltázok el? Előre is köszi a segítségeket!
 

Tömb elemeinek elérése

Anonymous · 2006. Jún. 29. (Cs), 17.39
Kezdő vagyok, ezt előre leszögezem. Találtam a neten egy osztályt, ami xml-ből tömböt csinál. Ennek a tömbnek az elemeit szeretném elérni, de az én tudásom még kevés hozzá.

Így néz ki a tömb, és mondjuk a 'kerdes'-t szeretnem tudni:

Array
(
    [info] => Array
        (
            [proba] => Array
                (
                    [0] => Array
                        (
                            [faq] => Array
                                (
                                    [0] => Array
                                        (
                                            [kerdes] => 
    Ez az elso kerdes.
                                            [valasz] => 
     Ez az elso valasz.
                                        )

                                )

                        )

                )
         )
)
 

SimpleXML-lel beolvasott XML-ben kötőjeles elemnév

Anonymous · 2006. Jún. 29. (Cs), 13.42
simplexml_load_file beolvasok egy xml állományt. Minden tökéletesen müködik, azonban van egy ilyen a fileban: <GENERATED-DATE>2006.06.29.</GENERATED-DATE>.
Ezzel nem tudok megbirkózni. Hogyan lehetne megoldani a legegyszerűbben, hogy ehhez az adathoz is hozzáférjek? A problémát a kötőjel okozza.

Mivel a file-okat úgy kapom, így a problémát valahogy kezelnem kéne. Ötlet?
 

defined(ADATBAZIS) típusú ellenőrzés nem működik

jeti · 2006. Jún. 29. (Cs), 13.19
Sziasztok!

Egyszerre több különálló oldalt működtettek ugyanazokkal a programokkal (fórum, regisztráció, cikk stb. kezelés), de külön táblákkal. A legegyszerűbb megoldás több adatbázis használata lenne, de erre nincs lehetőségem. Eddig úgy oldottam meg az index.php –ban megadtam egy változót és minden függvényben – ahol kellett – globálissá téve kiolvastam, hogy most mit kell a tábla neve elé illeszteni. Ez az érték soha sem változott meg a program futása közben, sőt azon kívül se túl gyakran …
Arra gondoltam állandóval fogom mostantól megoldani. Definiáltam az index php-ban

define("ADATBAZIS","egyes_");
Ezt egyszerűen beágyazott fájlokban és függvényeken keresztül is elérem.
Eddig minden rendben.

Van a programjaimban egy biztonsági zár az első sorban. Mindig megnézi, hogy létezik-e a változó vagy nem? Ha igen, akkor mehet a beolvasás. Ha nem, akkor valószínűleg a php fájl pontos helyét írták be, ilyenkor elküldöm az boklászót a főoldalra.
A konstans nem tudom isset()-el megnézni, csak azt, hogy definiáltam-e már.

if (defined(ADATBAZIS)==false) {header("Location: http://valmi.hu");}
if (! defined(ADATBAZIS)) {header("Location: http://valmi.hu");}
Egyik megoldás sem működik, mert mindig elugrál a főoldalra. Pedig az index.php-ban definiálva van és abba ágyazódnak be ezek a fájlok is.
Mi a hiba?
Tud valaki a leírtaknál egyszerűbb megoldást?
Ugye, lehet egyszerre több konstansom is.
 

Index.html fájl átírásának kizárárása a rewrite-ból

zvaranka · 2006. Jún. 29. (Cs), 13.08
Sziasztok!

Sikeresen be lett üzemelve az opensef komponens a joomla portálrendszer alá. Van egy index.html oldal, amiből egy linkkel lehet átkerülni a portálra. Az index.html a joomla gyökerében van. Tehát a www.valami.hu címet beírva eredetileg az index.html indult el, amióta bekapcsoltam az opensef működését, egyből belép a portálra, nem jön fel az index.html tartalma. Jelenleg a www.valami.hu-t beírva egyből az index.php-re történik az átirányítás.

Ha beállítom az DirectoryIndex index.html index.php sorrendet, akkor bejön ugyan az index.html oldal, viszont a rajta levő, az index.php-re mutató linkre kattintva nem jön be az index.php oldal, hanem visszajön az index.html oldal.

Mit kell még beállítani a .htaccess fájlban, hogy a mod_rewrite ne foglalkozzon az index.html -lel? Az alábbi tartalom van a .htaccess fájlban

Options +FollowSymLinks
Options +SymlinksIfOwnerMatch
RewriteEngine On
RewriteBase /
RewriteRule ^content(.*) index.php
RewriteRule ^component/(.*) index.php
DirectoryIndex index.php
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*) index.php

Nagyon megköszönném, ha valaki tudna segíteni.

Zoltán
 

ini_set() kicserélése

kvark · 2006. Jún. 29. (Cs), 13.06
Üdv!
A problémám a következő:
Készítettem egy flash alkalmazást ami flash remoting-ot és amfphp-t használ szerver oldalon.
Nekem a gépemre telepített szerveren minden tökéletesen megy, viszont ha feltöltöm egy ingyenes szolgáltatóhoz ott az ini_set() függvény minden esetben le van tiltva.
Tudom hogy legegyszerűbb az lenne ha bérelnék egy saját szervert de ezt nem tudom és nem is akarom megtenni.

A kérdésem arra irányulna hogy van e valamilyen bejáratott mód arra hogy az ini_set() függvényt kiszedhessem és valami mással válthassam fel, amit nem szokás letiltani biztonsági okokra hivatkozva.
 

június 29

A while lefut csak az első futs értékeit használja

Anonymous · 2006. Jún. 28. (Sze), 22.47
ÜDv!

Az a bajom hogy a while anyiszor lefut ugye ahény sor van(3), de minenhova az első értékeit
adja le...

miért?

<?php

$server_query = mysql_query("SELECT server_id, server_status_adress, server_status_port, server_status_xml FROM servers");

while ($server_extract = mysql_fetch_assoc($server_query)) {

$server_id = $server_extract['server_id'];

$server_status_adress = $server_extract['server_status_adress'];
$server_status_port = $server_extract['server_status_port'];
$server_status_xml = $server_extract['server_status_xml'];

$server_adress = $server_status_adress;
$server_port = $server_status_port;

$f = @fsockopen($server_adress, $server_port, $errno, $errstr, 2);

if (!f) {
$server_online = 0;
}

if ($f) {
$server_online = 1;
$query = "GET /$server_status_xml\r\n";
$query .= "Host: sylvanas.kani.hu\r\n\r\n";

function xml_extract() {
global $f;
global $xml_site;
$rows = 0;

while ($xml_rows = fgets($f, 4048)) {

if ($rows > 5) {
$xml_site .= $xml_rows;
}

$rows++;

}

}

fwrite($f, $query);

xml_extract();

$parser = xml_parser_create();

xml_set_element_handler($parser, "start_tag", "end_tag");
xml_parser_set_option($parser, XML_OPTION_CASE_FOLDING, 0);

$xml = $xml_site;

$xml = utf8_decode($xml);


function start_tag($parser, $tag, $type) {
global $player_count;

if ($tag == "player") {
$player_count++;
}

}

function end_tag($parser, $tag) {

}

function chd_tag($parser, $tag) {

}

xml_parse($parser, $xml);

xml_parser_free($parser);

if ($f) {

if (isset($player_count)) {
$server_online_users = $player_count;
}

elseif (!isset($player_count)) {
$server_online_users = 0;
}

}

}

if ($server_online == 0) {
$server_online_users = '0';
}

mysql_query("UPDATE servers SET server_online='$server_online', server_online_users='$server_online_users' WHERE server_id='$server_id'");

}


?>
Előre is köszönöm.
 

Beágyazott file nevének kiíratása

krey · 2006. Jún. 28. (Sze), 19.30
Egy ehhez hasonló nevű változót keresek:

$GLOBALS["_SERVER"]["RUNNING_SCRIPT"]
$GLOBALS["_SERVER"]["INCLUDED_PHP_SELF"]

vagy akármi.
Aki megtalálta már az kérem szóljon!
(tehát kéne egy változó, ami a $_SERVER["PHP_SELF"] és $_SERVER["SCRIPT NAME"]-ekhez hasonlóan működne, de a beágyazott file nevét írná ki)

üdv. krey
 

Két dátumidőpon között eltelt idő számítása

Anonymous · 2006. Jún. 28. (Sze), 18.02
Hi!

Adott két időpont ebben a formátumban: ÉÉÉÉ-HH-NN óó:pp:mm. Hogyan tudnám a két dátum között eltelt időt kiszámolni? Az eredmény szintén ebben a formátumban kéne. Köszi minden ötletet.