Include változó paraméterrel
Sziasztok!
Sokadszor nem tudok valamit rendesen megcsinálni, mert az include parancsnál nem tudom elérni, hogy $ paramétert hívjon be. Eddig találtam egyéb megoldást, de mostmár meguntam, hogy nem jövök rá a hibára. Tudtok nekem segíteni? itt a forráskód:
így hívom a funkciót:
ez meg maga a funkció:
■ Sokadszor nem tudok valamit rendesen megcsinálni, mert az include parancsnál nem tudom elérni, hogy $ paramétert hívjon be. Eddig találtam egyéb megoldást, de mostmár meguntam, hogy nem jövök rá a hibára. Tudtok nekem segíteni? itt a forráskód:
így hívom a funkciót:
jogellenoriz($akkreditacio, $akreditacioe, $akkreditacio);
ez meg maga a funkció:
function jogellenoriz($mihezjog, $miigaz, $mittartalmaz)
{
if ($adminfelhasznalo[.$mihezjog.]=="1")
{
$miigaz="true";
$mittartalmaz.='.php'
include ($mittartalmaz);
print('
<table>
<tr>
<td width="700" class="menu2">
| | <a href="#lapteto">Lap tetejére ugrás</a> | |
</td>
<tr>
</table>');
}
}
{
if ($adminfelhasznalo[.$mihezjog.]=="1")
{
$miigaz="true";
$mittartalmaz.='.php'
include ($mittartalmaz);
print('
<table>
<tr>
<td width="700" class="menu2">
| | <a href="#lapteto">Lap tetejére ugrás</a> | |
</td>
<tr>
</table>');
}
}
mi a hibaüzenet?
itt a hiba üzenet...
MSzilveszter - http://www.netnap.hu
Értelmezzük az üzenetet
doksiolvasás esetleg??
if ($adminfelhasznalo[.$mihezjog.]=="1")
ez mi a csuda? Mi az
$adminfelhasznalo[
értéke? mi a]
értéke?És amit akartál csinálni valójában: honnan kap értéket ez az $adminfelhasznalo? Sztem nagy baj van, ha egy sorban ennyi hiba van..
az adminfelhasználó
if ($adminfelhasznalo[$mihezjog]=="1") ez eredetileg az akart lenni, hogy a $mihezjog lenne az adminfelhasználó fetch array-jel kiszedett oszlopának a neve, de azt hiszem ez így nem jó.
HA VAN ; az előző sor végén, akkor nincs hibaüzenet nem csinál semmit, egyszerűen tovább megy.
MSzilveszter - http://www.netnap.hu
nem jó helyen keresed a problémát
üdv,
Zila
az a fájl, amiről most
require_once("connect.php");
$adminfkeres = mysql_query("SELECT * from admin_felhasznalo WHERE fnev='" . $adfnev . "'");
$adminfelhasznalo = mysql_fetch_Array($adminfkeres);
function jogellenoriz($mihezjog, $miigaz, $mittartalmaz)
{
if ($adminfelhasznalo[$mihezjog]=="1")
{
$miigaz="true";
$mittartalmaz.='.php';
include ($mittartalmaz);
print('
<table>
<tr>
<td width="700" class="menu2">
| | <a href="#lapteto">Lap tetejére ugrás</a> | |
</td>
<tr>
</table>');
}
}
if($kod<>$adminfelhasznalo[jelszo])
{
print('<script language="JavaScript" type="text/JavaScript">
alert("Érvénytelen felhasználói név vagy jelszó! További infóért keresdd meg Miklovicz Szilveszter!");
history.back(1);
</script>
');
die();
}
print
('
<table width="700">
<tr>
<td width="700" class="cimsor">
NetNap Admin - verzió: 2.0.3
</td>
</tr>
<tr>
<td width="700" class="menu2">
<a href="#cikkinsert">Cikkfeltöltés tetejére ugrás</a> | | <a href="#galeriainsert">Galériafeltöltés tetejére ugrás</a> | | <a href="#extrainsert">További módosítások tetejére ugrás</a>
</td>
</tr>
</table>
');
jogellenoriz($cikk, $cikkinzerte, $cikkinsert);
jogellenoriz($galeria, $galeriainserte, $galeriainsert);
jogellenoriz($cikkmodositas, $cikkmode, $cikkmodosit);
jogellenoriz($impresszum, $impresszuminserte, $impresszummode);
jogellenoriz($akkreditacio, $akreditacioe, $akkreditacio);
//admin2_2.php vége
?>
és a cikk, galeria fájlok léteznek, eddig is használtam őket, és eddig behívta őket, csak most már meguntam azt a sok ronda sort, és ezért akarom functionba ölteni azt az egy if es részt, ami a functionban van.
a cikkinsert.php remekül üzemel, ha a paraméter helyére beírom minden hova a rendes adatokat, akkor jó. azt hiszem ott az if (admin....[]...) résszel van a baj, csak nem tudom, mi lehet.
Konkrétan most annyit csinál, hogy a három linket, a lap tetejére még kiírja (cikk feltöltés, kép feltöltés, meg extra azt hiszem), de a többit már nem csinálja. mintha ott lenne a vége a fájlnak a function behívása elött.
MSzilveszter - http://www.netnap.hu
a lényeget!
' ' tényleg van ma velem valami....
Köszönöm természetesen a segítséget.
MSzilveszter - http://www.netnap.hu
dehogynem változott!
baj hogy nincs baj
{
$adminf2keres = mysql_query("SELECT '" .$mihezjog. "' from admin_felhasznalo WHERE fnev='" . $adfnev2 . "'");
$sql = mysql_fetch_Array($adminf2keres);
if ($adminfelhasznalo[0]=="1")
{
$miigaz="true";
$mittartalmaz.='.php';
include ($mittartalmaz);
print('
<table>
<tr>
<td width="700" class="menu2">
| | <a href="#lapteto">Lap tetejére ugrás</a> | |
</td>
<tr>
</table>');
}
}
ezzel hívom pedig be:
MSzilveszter - http://www.netnap.hu
figyeld már mit csinálsz!
De azt sem gondolnám, hogy '$cikkinsert.php' nevű fájlod van, tehát a dollár szerepel a fájl nevében. Pedig a kód ilyen nevű fájlt fog keresni, ha már bejut az ifbe.
rendben. azt hiszem, mindent...
Még egyszer bemásolom ide a kódot, hátha megint találtok benne valamit, aztán igérem, nem zavarlak benneteket vele :)
{
$adminf2keres = mysql_query("SELECT " .$mihezjog. " FROM admin_felhasznalo WHERE fnev='" . $adfnev2 . "'");
$adminsql = mysql_fetch_Array($adminf2keres);
if ($adminsql[0]=="1")
{
$miigaz="true";
include ($mittartalmaz);
print('
<table>
<tr>
<td width="700" class="menu2">
| | <a href="#lapteto">Lap tetejére ugrás</a> | |
</td>
<tr>
</table>');
}
}
Ha beírom az include után a paraméter helyére magát az értéket, amit felvesz a paraméter, akkor se megy, pedig a fájl létezik, ott van, és működik gyönyörűen. :O
És elnézést az összevisszaságomért, de valahogy nem vagyok magammál ma :)
MSzilveszter - http://www.netnap.hu
nem is PHP-t töltesz be(?)
echo, print_r
Mielőtt megvizsgálok egy változót kiíratom, csak hogy lássam, egyáltalán azt tartalmazza-e, amit szeretnék. Ha lekérdezéses probléma van, akkor a
SELECT
után az eredményt úgy ahogy van kiíratom. EsetedbenPlusz, mivel a lekérdezést is változókból pakolod össze, lehet azt is meg kellene vizsgálni, hogy érvényes mezőt kérsz-e le.
Most, ha nem változott a függvényhívásod, akkor ez a lekérdezés áll össze:
cikk
mező mellett lekérni?U.I.: végső esetben, tedd el egy kicsit a feladatot, pihenj egy keveset, és utánna térj vissza rá. Pihenés után "csinosítgasd ki" a kódot, hátha úgy könnyebben észreveszed, hogy mi a probléma.
TikuVoltam
Ma is holnap fekszünk le, mint tegnap
-
kódot, még mielött ide beírtam, és azt adja vissza, amit szeretnék. egyet vagy 0-át. ha egy az érték, akkor enged be az ifbe, (if ....=="1") megoldással.
Megfogadtam a tanácsod, aludtam rá egyet, s most újra neki futok. ha megvan a működő kód, majd jelentkezek.
megpróbáltam kiírattatni azt a lekérdezést, eredménye: Array ( [0] => 1 ) , ami nekem jó, mert én azt mondtam neki, hogy ha eggyel egyenlő. márpedig a táblában egy van. bár lehet, félreértelmezem megint.
Ja igen. és a legújabb hibaüzenet:
Warning: jogellenoriz(cikkmodosit.php): failed to open stream: No such file or directory in admin2_2.php on line 15
a cikkmodosit.php és az admin2_2.php egy és ugyan azon a könyvtárban vannak pedig.
Köszönöm a segítséget.
MSzilveszter - http://www.netnap.hu