| | |
| Stránka: 1 z 1
| [ Príspevkov: 10 ] | |
Autor | Správa |
---|
Registrovaný: 06.03.07 Prihlásený: 09.05.07 Príspevky: 18 Témy: 6 Bydlisko: Nitra | Napísal Marosh: 15.03.2007 18:51 | |
|
mohli by stre mi nejak v skratke vysvetli funkciu include ?? (len pre pochopenie) ako napriklad ze ked kliknem na nejaky odkaz tak sa mi cez php otvori nova stranka
|
|
Registrovaný: 08.11.06 Prihlásený: 06.12.10 Príspevky: 15721 Témy: 7 Bydlisko: Bratislava | Napísal Jaro: 15.03.2007 20:05 | |
|
_________________ CPU Core i5 2400 cooler: CM Hyper 212+ | MB GB PH67-UD3-B3 | RAM 4GB DDR3 1600 | VGA Gainward 9600GT 512MB | monitor Samsung LE37A559 | HDD HITACHI 250GB + WD 640GB | PSU Fortron FSP400-60GLN | Case TT Soprano VB1000 BWS black | Mouse Razer DeathAdder NB HP ProBook 6450b |
|
Registrovaný: 30.05.06 Prihlásený: 08.10.14 Príspevky: 1756 Témy: 35 Bydlisko: BA - WESTSIDE | Napísal p360t: 15.03.2007 20:17 | |
|
nie, funkica include funguje len v php kóde, nie cez odkazy. slúži na vloženie nejakého súboru do iného súboru. prináša to výhody, keď napr. konfiguračný skript na pripojenie do databázy dáš do samostatného súboru a ten potom "includuješ" (hoci lepšie je v tomto prípade použiť funkciu require) do všetkých ostatných súboroch webu. tým pádom, ak napr. meníš hosting a nastavenie databázy, máš všetky údaje na 1 mieste a stačí ich zmeniť len raz.
príklad:
Kód: <?php // tento subor budeme vkladat do inych $hostitel="localhost"; $uziv_meno="nejakylogin"; $heslo="nbusr123"; $DB="databaza"; @$spojenie=mysql_connect($hostitel, $uziv_meno, $heslo); if(!$spojenie) echo "Nepodarilo sa vytvorit spojenie s hostitelom $hostitel!"; else { @$navratova_hodnota=mysql_select_db($DB); if (!$navratova_hodnota) echo "Nepodarilo sa nastavit databazu $DB!"; } ?>
a teraz súbor, do kt. vložíš ten kód: Kód: <php // pripojime sa na databazu include("pristup_do_databazy.php");
// uz sme pripojeni, mozme jej poslat nejake query
$result=mysql_query("SELECT * FROM users WHERE user = 'Jano' ORDER BY id_user");
... atd atd, skript pokracuje dalej ...
no, teraz by si mal ešte vedieť toto - existujú 4 funkcie, ktoré robia v podstate to isté, ale s menšími rozdielmi. tie funkcie sú:
include("nejaky_subor.php"); --- čisto len vloží súbor do iného, v prípade, že sa jej to nepodarí, skript beží ďalej (myslím, že sa vypíše warning). súbor možno vkladať opakovane.
include_once("nejaky_subor.php"); --- to isté, ako predchádzajúca, ale súbor sa vloží len raz (ak ju zavoláš druhý krát, ignoruje sa). vhodné napr. na náš príklad, kedy sa nám nestane, že 2 krát nastavíme spojenie s databázou.
require("nejaky_subor.php"); --- vkladá súbor podobne ako include, ale ak sa súbor nepodarí načítať, skript sa zastaví a vypíše sa chybové hlásenie.
require_once("nejaky_subor.php"); --- ako predchádzajúca, rovnako ako pri include_once sa súbor dá vložiť len raz.
viac nájdeš v php dokumentácii http://www.php.net/manual/en/language.c ... ctures.php
_________________
A. S. Tanenbaum píše: The terms LF, MF, and HF refer to low, medium, and high frequency, respectively. Clearly, when the names were assigned, nobody expected to go above 10 MHz, so the higher bands were later named the Very, Ultra, Super, Extremely, and Tremendously High Frequency bands. Beyond that there are no names, but Incredibly, Astonishingly, and Prodigiously high frequency (IHF, AHF, and PHF) would sound nice. |
|
Registrovaný: 06.03.07 Prihlásený: 09.05.07 Príspevky: 18 Témy: 6 Bydlisko: Nitra | Napísal autor témy Marosh: 15.03.2007 20:48 | |
|
ahaa dakujem pekne za vysvetlenie.
..a este som cital, ze sa to pouziva miesto pozicovania divov... tam to je ako ?
Kód: <?php if (file_exists($_GET['page'].".html")) { include($_GET['page'].".html"); } else { include("kontakt.html"); } ?>
a to "html" to si spravim dokument php a cez echo mu dam vypisat aky html kod má vypisat... dobre som to pochopil ?.... a nikde som nenasiel konkretnu spojitost ze ked uz kliknem na odkaz napr galeria tak sa mi vyheneruje ta stranka... dakujem
|
|
Registrovaný: 30.05.06 Prihlásený: 08.10.14 Príspevky: 1756 Témy: 35 Bydlisko: BA - WESTSIDE | Napísal p360t: 16.03.2007 6:27 | |
|
no tamtá konštrukcia je dosť neštandardná, ale dá sa aj tak.
treba si uvedomiť, že PHP a HTML sú od seba nezávislé, ale môžu pracovať spoločne - použiješ PHP na vygenerovanie HTML kódu. takže teoreticky môžeš použiť to čo tam máš, v praxi to vyzerá asi takto:
overí sa, či existuje súbor s názvom $_GET['page'].html (kde $_GET['page'] je premenná, názov nejakého súboru), ak existuje, tak sa natiahne na stránku, ak neexistuje, na stránku sa použije súbor kontakt.html. keď klikneš na odkaz, ktorý bude mať adresu www.example.com/index.php?page=galeria tak ten kód použije text "galeria", vyhľadá na servri súbor galeria.html a ak ho nájde, vypíše ti jeho obsah.
tento konkrétny príklad sa pravdepodobne používa tak, že máš hlavičku a nejakú navigáciu a iné prvky rovnaké pre všetky stránky a mení sa len malá časť stránky pomocou tohoto include. tým pádom máš všetko na jednom mieste a prípadné zmeny sa okamžite prejavia na celom webe.
_________________
A. S. Tanenbaum píše: The terms LF, MF, and HF refer to low, medium, and high frequency, respectively. Clearly, when the names were assigned, nobody expected to go above 10 MHz, so the higher bands were later named the Very, Ultra, Super, Extremely, and Tremendously High Frequency bands. Beyond that there are no names, but Incredibly, Astonishingly, and Prodigiously high frequency (IHF, AHF, and PHF) would sound nice. |
|
Registrovaný: 26.07.06 Prihlásený: 20.03.16 Príspevky: 1378 Témy: 90 Bydlisko: Slovakia-Ko... | Napísal kmsa: 16.03.2007 18:55 | |
|
ja by som mal jeden mali ale dost podstatny problem z include
index.php
Kód: ... <table width="248" border="0" cellspacing="0" cellpadding="0"> <tr> <td width="248"><img src="image/index_32x.gif" width="248" height="49" alt="" /></td> </tr> </table> <table width="248" border="0" cellspacing="0" cellpadding="0" background="image/index_36bb.gif"> <?php include("poll/vote.php"); ?> </table> <table width="248" border="0" cellspacing="0" cellpadding="0"> <tr> <td width="248"><img src="image/index_37.gif" width="248" height="20" alt="" /></td> </tr> </table> ...
vote.php(neviem kolko z neho chcete tak vam tu davam cely) Kód: <?php echo "<?xml version=\"1.0\" encoding=\"utf-8\"?".">"; ?> <tr> <td width="248" class="page"> <? require("./spojenie.php"); $poll = mysql_connect("$sql_server", "$sql_user", "$sql_password"); mysql_select_db ("$sql_database"); $checkforcurrent = mysql_query("select id,dateactive from polls where active='yes' order by question limit 1"); $current_poll = mysql_fetch_row($checkforcurrent); $curpollid = $current_poll[0]; $dateactive = $current_poll[1]; $today=date("Y-m-d 00:00"); $date1=strtotime( "$dateactive 00:00" ); $date2=strtotime("$today"); $datediffer = (($date2-$date1)/86400); if ($datediffer>=$interval){ $lookfornext = mysql_query("select id from polls where active='no' order by id limit 1"); $getnextid = mysql_fetch_row($lookfornext); $nextpollid = $getnextid[0]; if ($nextpollid){ $date = date("Y-m-d"); mysql_query("update polls set active='end' where id=$curpollid"); mysql_query("update polls set active='yes', dateactive='$date' where id=$nextpollid"); mysql_query("delete from poll_ip"); } }
function writeresults (){ $getquestion = mysql_query("select id,question,votes from polls where active='yes' order by question limit 1"); $question = mysql_fetch_row($getquestion); echo "<font class=\"nleft2\"><b>".$question[1]."</b></font><br /><font class=\"left\">"; $totalvotes = $question[2]; $getresults = mysql_query("select votes, alternative from poll_alternatives where poll_id='$question[0]'"); $imageid=1; while ($result = mysql_fetch_array($getresults)){ if ($totalvotes!=0){ $percentage = (round(($result["votes"]/$totalvotes)*10000))/100; } $imagewidth = round($percentage*2.263); echo "<b>".$result["alternative"]."</b> - $percentage% (".$result["votes"]." hlasov)<br />"; echo "<img src=\"poll/$imageid.gif\" width=\"$imagewidth\" height=\"10\" style=\"border:1px solid black\"><br />"; $imageid++; } echo "<br />Spolu hlasovalo $totalvotes</font>"; }
$ipquery = mysql_query("select ip from poll_ip where ip='$REMOTE_ADDR'"); $select_banned = mysql_num_rows($ipquery);
if($select_banned) writeresults(); else {
if (!$submit && !$results) { ?> <form method="post" action="<?=$PHP_SELF ?>" target="_top"> <?
$getquestion = mysql_query("select id,question,dateactive from polls where active='yes' order by question limit 1"); $question = mysql_fetch_row($getquestion); $pollid = $question[0]; $dateactive = $question[2]; $question = $question[1]; echo "<font class=\"nleft2\"><b>$question</b></font><br /><font class=\"left\">"; $getalternatives = mysql_query("select id, alternative from poll_alternatives where poll_id='$pollid'"); while ($writeit = mysql_fetch_array($getalternatives)){ echo "<input type=\"radio\" name=polloption value=\"".$writeit["id"]."\""; if (!$checkedvar){ echo "checked"; $checkedvar=1; } echo ">"; echo " ".$writeit["alternative"]."<br />"; } echo "<input type=\"hidden\" name=\"pollid\" value=\"$pollid\"><br />"; echo "<center><input type=\"Submit\" value=\"Hlasovať\" name=\"submit\"><br /><br />"; echo "<a href=\"".$PHP_SELF."?results=1\" target=\"_top\">Zobraziť vísletky</a>"; echo "</center></font>"; } elseif ($submit){ $checkforip = mysql_query("select ip from poll_ip where ip='$REMOTE_ADDR'"); if (mysql_num_rows($checkforip)==0){ mysql_query ("update poll_alternatives set votes=votes+1 where id='$polloption'"); mysql_query ("update polls set votes=votes+1 where id='$pollid'"); mysql_query ("insert into poll_ip (ip) values ('$REMOTE_ADDR')"); writeresults(); echo "<br /><font class=\"left\">Tvoj hlas bol prijatý</font>"; } else { writeresults(); echo "<br /><font class=\"left\">Jeden hlas na jednu IP adresu</font>";} } elseif($results){ writeresults(); } } mysql_close($poll); ?> </td> </tr>
a ked mi to tak vi-includuje tak mi stale spravi fugu medzi tabulkami(firefox facha dobre ale opera a explorer blbne) dôkazove screeny aby ste mali predstavu co za chybu mi to roby
neviete poradit co je stym zle bo ked priamo dam do indexu tak to ide v pohode
_________________ CPU: Intel E7200 momentalne default + freezer 7 pro | MB: Gigabyte GA-P35-DS3 rev. 2.0 F14 | RAM: A-DATA 4x1GB EE Vitesta | VGA: ATI Radeon HD4850 Sapphire Dual Slot | Monitor: BenQ E2200HD+17CTX | HDD: WD 3200AAKS + Maxtor 6Y080M0 80GB SATAII + 120GB ATA Barracuda | PSU: Corsair VX450W | Windows 7 Ultimate Sk | REPRO: Logitech X-210
+
IPhone 3GS JB 3.1.3 (new BR)
múdry sa postara o seba ale ešte múdrejši sa postara aj o druhých |
|
Registrovaný: 30.05.06 Prihlásený: 08.10.14 Príspevky: 1756 Témy: 35 Bydlisko: BA - WESTSIDE | Napísal p360t: 17.03.2007 8:47 | |
|
to nemá s include nič, podľa mňa. to je skôr záležitosť CSS.
_________________
A. S. Tanenbaum píše: The terms LF, MF, and HF refer to low, medium, and high frequency, respectively. Clearly, when the names were assigned, nobody expected to go above 10 MHz, so the higher bands were later named the Very, Ultra, Super, Extremely, and Tremendously High Frequency bands. Beyond that there are no names, but Incredibly, Astonishingly, and Prodigiously high frequency (IHF, AHF, and PHF) would sound nice. |
|
Registrovaný: 26.07.06 Prihlásený: 20.03.16 Príspevky: 1378 Témy: 90 Bydlisko: Slovakia-Ko... | Napísal kmsa: 17.03.2007 13:21 | |
|
p360t píše: to nemá s include nič, podľa mňa. to je skôr záležitosť CSS. no neviem bo ked to hodim priamo do indexu tak to funguje v pohode...ale ked myslis ze to je vec css tak poradte ako sa toho zbavit bo je to volovske sa na to tak kukat
_________________ CPU: Intel E7200 momentalne default + freezer 7 pro | MB: Gigabyte GA-P35-DS3 rev. 2.0 F14 | RAM: A-DATA 4x1GB EE Vitesta | VGA: ATI Radeon HD4850 Sapphire Dual Slot | Monitor: BenQ E2200HD+17CTX | HDD: WD 3200AAKS + Maxtor 6Y080M0 80GB SATAII + 120GB ATA Barracuda | PSU: Corsair VX450W | Windows 7 Ultimate Sk | REPRO: Logitech X-210
+
IPhone 3GS JB 3.1.3 (new BR)
múdry sa postara o seba ale ešte múdrejši sa postara aj o druhých |
|
Registrovaný: 18.01.06 Prihlásený: 17.06.08 Príspevky: 378 Témy: 84 Bydlisko: Žilina | Napísal Fenius: 17.03.2007 18:36 | |
|
p360t píše: tento konkrétny príklad sa pravdepodobne používa tak, že máš hlavičku a nejakú navigáciu a iné prvky rovnaké pre všetky stránky a mení sa len malá časť stránky pomocou tohoto include. tým pádom máš všetko na jednom mieste a prípadné zmeny sa okamžite prejavia na celom webe.
pravdepodobne ? a ty ako robis stranky ked nechces stale kopirovat kod
_________________ MB LTD MS-7125, Zdroj 380W CPU x86 Family 15 model 47Stepping 2 AMD 3500+2200 @ 2552 MHz (232 MHz FSB), (chladenie +3X Zalman FB 123 (2800 rpm) VGA-nVidia GF 8800HDD Enhanced IDE (ata-7) 157 GB ram 2X 512 MB ddr-sdram 200 @ 230 chipset nVidia nForce4 serial ATA, zvuk-Realtek AC97, GENIUS J-10 (200W)monitor benq senseye fp202w klavesnica Chicony kr0350, myš A4 tech x-710f 1000dpi AP Air live Ovislink Corp. 802.11 G |
|
Registrovaný: 30.05.06 Prihlásený: 08.10.14 Príspevky: 1756 Témy: 35 Bydlisko: BA - WESTSIDE | Napísal p360t: 18.03.2007 17:32 | |
|
Fenius píše: pravdepodobne ? a ty ako robis stranky ked nechces stale kopirovat kod
no ja robím so šablónovacím systémom smarty, mám tam tých require_once funkcií viac, ale na html kód je už použítý smarty: 3 krát metóda display (hlavička, obsah, päta).
_________________
A. S. Tanenbaum píše: The terms LF, MF, and HF refer to low, medium, and high frequency, respectively. Clearly, when the names were assigned, nobody expected to go above 10 MHz, so the higher bands were later named the Very, Ultra, Super, Extremely, and Tremendously High Frequency bands. Beyond that there are no names, but Incredibly, Astonishingly, and Prodigiously high frequency (IHF, AHF, and PHF) would sound nice. |
|
| Stránka: 1 z 1
| [ Príspevkov: 10 ] | |
Podobné témy | Témy | Odpovede | Zobrazenia | Posledný príspevok |
---|
| include v PHP, ASP | 26 | 889 | 20.10.2010 21:50 walther | | include v PHP, ASP | 2 | 497 | 22.02.2010 15:25 Ďuri | | include v PHP, ASP | 10 | 770 | 03.01.2008 0:30 twistik | | INCLUDE v Assembler, C, C++, Pascal, Java | 7 | 912 | 14.01.2010 19:47 karolraner | | include v PHP, ASP | 5 | 711 | 10.04.2009 19:10 Draex | | include [ Choď na stránku: 1, 2 ] v PHP, ASP | 46 | 2573 | 18.09.2007 13:45 neopagan | | include v PHP, ASP | 6 | 325 | 30.05.2014 0:12 majky358 | | Bezpecne include ? v PHP, ASP | 2 | 460 | 20.03.2012 19:05 ewil | | Include blbne.. v PHP, ASP | 6 | 380 | 14.11.2011 10:05 black1101 | | Zvlastny include v PHP, ASP | 4 | 459 | 24.01.2008 14:43 Blackshadow | | chyba include v PHP, ASP | 6 | 550 | 09.09.2007 21:43 Flety | | Include dynamický v PHP, ASP | 3 | 540 | 31.01.2012 1:23 shaggy | | <!--#include... v PHP, ASP | 3 | 624 | 10.06.2010 18:24 shaggy | | PHP include v PHP, ASP | 3 | 1119 | 09.03.2010 20:17 Ďuri | | problem s include v PHP, ASP | 4 | 558 | 17.05.2007 21:46 jondo | | include a kodovanie v Ostatné | 2 | 516 | 19.06.2008 11:27 exoomer |
| Nemôžete zakladať nové témy v tomto fóre Nemôžete odpovedať na témy v tomto fóre Nemôžete upravovať svoje príspevky v tomto fóre Nemôžete mazať svoje príspevky v tomto fóre
|
|