Autor | Zpráva | ||
---|---|---|---|
nightrider Profil |
Dobrý večer, chci se zeptat proč mi nejde include vnořovt kam chci pomocí function?
******************************** neco.php <? function obsah() { // Nejaky obsah } ?> **********Konec souboru********** index.php <? include ("neco.php"); obsah(); ?> **********Konec souboru********** Ví někdo proč to nefachá? Děkuju Omlouvám se :-( na výpis chyb vždycky zapomenu. Call to undefined function obsah() |
||
Aesir Profil |
#2 · Zasláno: 31. 7. 2009, 21:59:44
nightrider:
1.) vypíše se chyba o neexistujícím souboru => máte špatně cestu k souboru neco.php 2.) vypíše se chyba o neexistující funkci => vkládáte jiný soubor, než si myslíte 3.) nevypíše se žádná chyba => funkce obsah() nevrací žádný výstup nebo máte potlačený výpis chyb . . . takhle můžeme pokračovat dál, nebo sem napíšete co znamená, že to „nefachá“ a budem vědět víc a nebudem muset věštit. |
||
shaggy Profil |
#3 · Zasláno: 31. 7. 2009, 22:32:51
nightrider
Len taká poznámka - ty sa nesnažíš "vnoriť" obsah pomocou nejakej vlastnej funkcie. Ty proste includuješ súbor, ktorý obsahuje nejakú funkciu a to je dosť rozdiel. Nechceš si radšej niekde prečítať základy php? Ušetríš si námahu s vymýšlaním náročných názvov a možno sa aj niečo naučíš. |
||
nightrider Profil |
#4 · Zasláno: 31. 7. 2009, 22:46:34
A když chci docílit aby se obsah includu vnořoval tam kde chci jak to mám tedy udělat?
|
||
shaggy Profil |
#5 · Zasláno: 31. 7. 2009, 22:47:44
nightrider
Presne tak ako si to napísal v prvom príspevku. Chybu tam nevidím. |
||
nightrider Profil |
#6 · Zasláno: 31. 7. 2009, 22:51:58 · Upravil/a: nightrider
Pokud to tedy je dobře, tak proč mi to nejde? Vim, že mi chyba říká že nemám nadefinovaný funkce v "obsah()" ale nevim o po mně tedy víc chce
|
||
Aesir Profil |
#7 · Zasláno: 31. 7. 2009, 22:56:20
nightrider:
Máte zapnutý výpis všech chyb (včetně varování)? Opravdu jsou oba dva soubry na stejné úrovni (ve stejném adresáři)? |
||
nightrider Profil |
#8 · Zasláno: 31. 7. 2009, 22:59:28
Jestli mám zapnutý výpis všech chyb to nevím, ale ty dva soubory nejsou ve stejnym adresáři. Cesta k souboru, je ale správná.
|
||
Aesir Profil |
#9 · Zasláno: 31. 7. 2009, 23:03:14
nightrider
„Cesta k souboru, je ale správná.“ V tom případě v něm není definovaná funkce obsah. |
||
nightrider Profil |
#10 · Zasláno: 31. 7. 2009, 23:05:20 · Upravil/a: nightrider
Ještě mně napadlo jestli funkci nevadí podmínky? Ty tam mám taky daný
|
||
Aesir Profil |
#11 · Zasláno: 31. 7. 2009, 23:13:50
nightrider:
„Mám to přesně takhle: “ Opravdu přesně takhle? Pokud ano, tak už řádek if (mam zobrazit){ vyhodí parse error. Tenhle kód už se liší od toho v prvním příspěvku, tak buď někde dejte k dispozici oba dva, celé soubory, nebo tu chybu nidky nenajdeme. |
||
fuckin Profil |
#12 · Zasláno: 1. 8. 2009, 12:36:53 · Upravil/a: fuckin
„Ještě mně napadlo jestli funkci nevadí podmínky? Ty tam mám taky daný“
Prosím?? Proč by měli funkci vadit podmínky ?? Jinak ti tam chybel ukoncovaci tag. <?php function obsah() { if ($opravneni['fotogalery'] == 'yes') { echo "<img src=\"catalog/css/".$opravneni["present_style"]."/img/arrow.png\" alt=\"->\"><a href=\"index.php?action=fotogalery\">".$m3."</a><br>"; } if ($opravneni['map'] == 'yes') { echo "<img src=\"catalog/css/".$opravneni["present_style"]."/img/arrow.png\" alt=\"->\"><a href=\"index.php?action=map\">".$m8."</a><br>"; } } // Vyvolávám to: include ("adresar/neco.php"); // Je umístěno úplně nahoře ?> <div class="lista"><?php echo $zahlavi5; ?></div> <div class="lista-p_h"></div> <div class="lista-p_s"><span class="popisek" style="width:97%;"> <?php obsah(); ?></span></div> <div class="lista-p_d"></div> Aesir „tak buď někde dejte k dispozici oba dva, celé soubory, nebo tu chybu nidky nenajdeme.“ Stačilo to hodit do editoru a podívat se kde je chyba, zabralo me to tak 2 sekundy. |
||
nightrider Profil |
#13 · Zasláno: 1. 8. 2009, 12:48:05 · Upravil/a: nightrider
Chyba je stále a ukončovací značkou to neni. Neni to celej kod a to proto, že když by jsem měl dát celej odevšeho, tak by toho bylo srašně moc.
|
||
fuckin Profil |
#14 · Zasláno: 1. 8. 2009, 12:52:31
„Omlouvám se :-( na výpis chyb vždycky zapomenu. “
tak prosim porad nezapominej a napis kde je chyba a uved zde dany kod ktery je v ramci te knihy. |
||
Alphard Profil |
#15 · Zasláno: 1. 8. 2009, 13:01:55
nightrider:
Proměnné uvnitř těch podmínek nejdou nastaveny jako globální, ani jako paremetr. Možná je problém v tom (nechce se mi to celé číst). Všechny podmínky se vyhodnotí jako false a vypíše to maximálně chybu, že $opravneni není definovaná. |
||
nightrider Profil |
#16 · Zasláno: 1. 8. 2009, 13:03:48 · Upravil/a: nightrider
Jsem všechno komplet strčil do txt souboru. Je tam všechno co stím má co spolěčnýho. Fakt je, že se chyba zobrazí jakmile vytahuju funkci v zahlavi.php pokud to vytahnutí zruším, tak všechno bez chyb, ale jakmile chci funkci vytáhnout, tak je pruser.
Všechno je definované. Jen function zlobí. Pokud místo function dam rovnou inlude, tak je vše o.k. Pokud by jsem to udělal třeba jako: $obsah = include 'cesta/soubor.php'; do záhlaví potom vytáhnul, tak by to bylo o.k. To jsem taky už testoval jestli to nemám udělat raději tak,ale nechtěl mi to vzít. |
||
fuckin Profil |
#17 · Zasláno: 1. 8. 2009, 13:06:22
nightrider
V syntaxi chyba neni, problem bude asi v tom jak rekl Alphard. Nic jineho me nenapada a jelikoz jsi ani nenapsal vypis chyby tak nemuzeme poradit. |
||
nightrider Profil |
#18 · Zasláno: 1. 8. 2009, 13:10:24 · Upravil/a: nightrider
Fatal error: Call to undefined function obsah() in /home/free/vyjimecny.cz/t/root/www/css/zahlavi.php on line 68
Řádek 68: <?php obsah(); ?> |
||
fuckin Profil |
#19 · Zasláno: 1. 8. 2009, 13:15:59 · Upravil/a: fuckin
Do te hlavicky zahlavi.php nekde na zacatek dej
require_once "cesta k souboru more.php"; |
||
nightrider Profil |
#20 · Zasláno: 1. 8. 2009, 13:19:22 · Upravil/a: nightrider
To já mám hned v index.php (include 'more.php';) dal jsem include na to co jsi mi poradil, ale beze změny
|
||
fuckin Profil |
#21 · Zasláno: 1. 8. 2009, 13:30:41
undefined function znamena ze funkce neni definovana takze to includujes blbe, dej si do toho souboru nejake echo at vidis zda je spravne naincludovany. Includujes ho pred aktivaci funkce? Vidim to na nejaky blby preklep.
|
||
nightrider Profil |
#22 · Zasláno: 1. 8. 2009, 13:33:30 · Upravil/a: nightrider
Fuckin máš pravdu :-) špatný pořadí includu :-) ted je to bez chyb,ale zase nic nezobrazí
dal jsem do souboru more.php echo který se mi vypsalo, ale ty věci v podmínkách se mi nevypsali. To jsem si jisty, že pořadim includovanych souboru to nebude Podmínky jsou daný v souboru if.php a ten je nad more.php a zahlavim.php |
||
Aesir Profil |
#23 · Zasláno: 1. 8. 2009, 13:54:55
fuckin:
„Stačilo to hodit do editoru a podívat se kde je chyba, zabralo me to tak 2 sekundy.“ Ano, máte pravdu, kdyby v tom příspěvku byl od začátku tento kód. Ale bohužel tam bylo před tím něco úplně jiného, proto jsem žádal o kompletní zdroják. Editovat původní znění příspěvku na který už někdo reagoval není úplně šikovné. :( |
||
fuckin Profil |
#24 · Zasláno: 1. 8. 2009, 14:01:34
nightrider
Ano, a ted je problem v tom jak psal alphard. Promenne uvnitr te funkce musi byt globalni. A priste prosim needituj sve prispevky tak drasticky. Staci pripsat par slov a ne ze vymazes cely kod plus par dulezitych vet. |
||
nightrider Profil |
#25 · Zasláno: 1. 8. 2009, 14:06:06
Globální? To se prosím dělá jak?
|
||
fuckin Profil |
#26 · Zasláno: 1. 8. 2009, 14:11:45
$GLOBALS['nazev_promenne'], podiv se radsi do manualu.
Nebo si do te funkce dej vstupni parametry. To se me zda jednodussi. |
||
nightrider Profil |
#27 · Zasláno: 1. 8. 2009, 14:20:35 · Upravil/a: nightrider
function obsah($rights, $opravneni) { // Takhle nějak? Vůbec ted nevim kam, co, proč, jak
Pomůže mi někdo ještě stímhle? |
||
fuckin Profil |
#28 · Zasláno: 1. 8. 2009, 16:24:23
do funkce musis predat ty hodnoty ktere pouzivas uvnitr te funkce.
Takze nejak takto. Do hlavicky funkce udas formalni parametry. Pri aktivaci funkce pak zadas skutecne parametry. function obsah($prava,$text1,$text2) { ... } // doufam ze sem ty promenne dobre spocital Ty promenne uvnitr te funkce budes muset upravit tak aby se shodovali s temi formalnimi. Pote tu funkci budes aktivovat s temi promennymi cos mel puvodne v te fci obsah($opravneni,$m3,$m8); Hodnoty skutecne parametru se ulozi do formalnich parametru v danem poradi jak byly aktivovany. |
||
nightrider Profil |
#29 · Zasláno: 1. 8. 2009, 17:25:08
Porad nevim jak to udelat. Neni nejaka jednodussi moznost? Třeba $more = include('more.php');
|
||
fuckin Profil |
#30 · Zasláno: 1. 8. 2009, 18:09:10
ten tvuj prikaz ma delat co? :D
|
||
Téma pokračuje na další straně.
|
Toto téma je uzamčeno. Odpověď nelze zaslat.
0