![]() |
![]() ![]() |
![]() |
![]() ![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 35 Pomógł: 0 Dołączył: 20.05.2005 Ostrzeżenie: (10%) ![]() ![]() |
Od razu zaznacze ze dopiero zaczynam zabawę z php.
Mam plik index2.php na którym na boku w menu umiesciłem w ramce sondę za pomocą: Kod <? include("poll.php"); ?> Wszystko działa jak należy ale teraz w ramce na str głównej (index2.php) chciałem umieścić taką prostą pętlę za pomocą której zmieniało by podstrony kozystająć z index2.php: Kod <? if($id == "") { $id = $_GET['id']; } if ($id != "") { if(file_exists($id.".php")) { include($id.".php"); } else { include("glowna.php"); } } else { include("glowna.php"); } ?> Zwraca mi błąd: Kod Fatal error: Cannot redeclare poll() in /home/accounts_h/harry/public_html/includes/functions.php on line 7 Co rozumiem, że za dużo razy includowałem plik functions.php. Tylko do póki nie wstawiłem tej pętli do zmiany podstron na indexie błędu nie było a pętla przecież ni jak kozysta z functions.php Bardzo proszę o pomoc. |
|
|
![]()
Post
#2
|
|
![]() Grupa: Przyjaciele php.pl Postów: 2 196 Pomógł: 2 Dołączył: 17.01.2004 Skąd: Sosnowiec Ostrzeżenie: (0%) ![]() ![]() |
-------------------- |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 35 Pomógł: 0 Dołączył: 20.05.2005 Ostrzeżenie: (10%) ![]() ![]() |
Użyłem
Kod <? include_once("poll.php"); ?> Błąd wyświetla się nadal. Lipa juz 2 wieczór nad siedzę : (( Help me pleaseeee |
|
|
![]()
Post
#4
|
|
![]() Grupa: Przyjaciele php.pl Postów: 2 196 Pomógł: 2 Dołączył: 17.01.2004 Skąd: Sosnowiec Ostrzeżenie: (0%) ![]() ![]() |
Skoro masz deklarację funkcji poll() w poll.php to po co druga deklaracja tej samej funkcji w functions.php?
-------------------- |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 35 Pomógł: 0 Dołączył: 20.05.2005 Ostrzeżenie: (10%) ![]() ![]() |
Troche nie wiem co masz na myśli. Scrypt sondy był juz gotowy nie ja go pisałem:
Moze przytocze zawartość obu plików: poll.php Kod <?php // _______________ //------------------------< SOME INCLUDES >------------------------------------- // ŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻ include 'config.php'; include 'includes/functions.php'; require_once("includes/configmagik.php"); // __________________ //-----------------------< GLOBAL VARIABLES >----------------------------------- // ŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻ // current script name $currentFile= array_pop(explode("/", $_SERVER["SCRIPT_NAME"])); // txt/db file path $txtPath = $scriptPath."txt/txtdb.ini.php"; $imagesPath = $scriptPath."images/"; /******************************************************************************/ // MAIN SCRIPT // poll($txtPath, $imagesPath); ?> includes/functions.php Kod <?php /******************************************************************************* **** MAIN POLL FUNCTIONS **** *******************************************************************************/ function poll($path="txt/txtdb.ini.php", $img="images/") { global $width; // create and configure new ConfigMagik-Object $dbTXT = new ConfigMagik( $path, true, true); $dbTXT->SYNCHRONIZE = false; // if poll exist if($dbTXT->get('pollid','MAIN')!=null) { // se č stato inserito un voto... if ( (isset($_POST['voto'])) && ($_POST['voto']!="") ) { // Estraggo l'id del sondaggio (pollid) $pollid = $dbTXT->get('pollid', 'MAIN'); // Controlla se l'utente ha giŕ votato questo sondaggio // Se non ha mai votato questo sondaggio... if ( !isset($_COOKIE['poll4all']) || $_COOKIE['poll4all']!=$pollid ) { // registra il voto $anKey = "an".$_POST['voto']."poll"; $dbTXT->increment($anKey, 'ANSWERS'); if ($dbTXT->save()) $msg = "<br />- Dzięki za głos -"; else print "<div style=\"width: ".$width."px; text-align: center;\">- Error during storing vote -</div>"; // Invio il cookie che notifica l'avvenuta votazione setcookie( "poll4all", $pollid, time()+60*60*24*360 ); } // visualizza il sondaggio (risultati) pollPrint($dbTXT, $img, $msg); } else { // visualizza il form per la votazione pollForm($dbTXT); } } // if poll doesn't exist else print "<div style=\"width: ".$width."px; text-align: center;\">- No Poll Available -</div>"; } /******************************************************************************* **** VISUALIZZA RISULTATI SONDAGGIO **** *******************************************************************************/ function pollPrint(&$dbTXT, $imgPath="images/", $msg="") { global $border,$width,$bgColor,$percentageBg, $cellpadding,$questionAlign,$optionsAlign, $questionColor,$optionColor,$questionBgColor, $font,$answerSize,$RandomColors,$questionSize,$barBg; // inizializzo l'array contenente i numeri corrispondenti ai colori per gli istogrammi $colors = array(1,2,3,4,5,6,7); if ($RandomColors) shuffle($colors); $numAnswers = $dbTXT->get('numAnswers', 'MAIN'); $question = $dbTXT->get('question', 'MAIN'); $totVoti = votiTotali($dbTXT); echo "<!-- Poll Box --> <table style=\"width: ".$width."px; background-color: ".$bgColor."; border: ".$border."px solid #000000; padding: ".$cellpadding."px ".$cellpadding."px ".$cellpadding."px ".$cellpadding."px;\"> <!-- QUESTION --> <tr><td style=\"text-align: ".$questionAlign."; background-color: ".$questionBgColor."; font-family: ".$font.",Arial; font-size: ".$questionSize."px; color: ".$questionColor."; padding: 5px 5px 5px 5px;\">$question</td></tr> <!-- Separator --> <tr><td style=\"width: ".$width."px; height: 5px;\"> </td></tr>"; // visualizza voti for ($i=0; $i<$numAnswers; $i++) { $answerKey = "an".($i+1); $pollKey = $answerKey."poll"; $answer = $dbTXT->get($answerKey,"ANSWERS"); $poll = $dbTXT->get($pollKey,"ANSWERS"); // calcolo la percentuale evitando la divisione per zero if ($poll!=0) {$percentuale=(($poll*100)/$totVoti);} else $percentuale=0; if ($percentuale) { $w = (int)(((($width-($cellpadding*2)-8)*0.01)*$percentuale)); $barra = "<img src=\"".$imgPath."".$colors[$i].".gif\" width=\"$w\" height=\"8\" alt=\"bar\" />"; } else $barra = "<img src=\"".$imgPath."0.gif\" width=\"8\" height=\"8\" alt=\"no result\" />"; echo "<!-- Text Answer --> <tr><td style=\"text-align:".$optionsAlign."; background-color: ".$percentageBg."; font-family: ".$font.",Arial; font-size: ".$answerSize."px; color: ".$optionColor.";\">$answer: $poll votes (".round($percentuale,1)."%)</td></tr> <!-- Bar --> <tr><td style=\"text-align: left; background-color: ".$barBg.";\">$barra</td></tr>"; } // toal votes echo "<tr><td style=\"text-align: center; font-size: ".$answerSize."px;\">Głosów: $totVoti.$msg</td></tr> </table>"; } /******************************************************************************* **** VISUALIZZA IL FORM PER VOTARE **** *******************************************************************************/ function pollForm(&$dbTXT) { global $border,$width,$cellpadding,$questionAlign,$questionBgColor, $font,$answerSize,$optionColor,$bgColor,$oddBgColor,$evenBgColor, $questionSize,$questionColor; $currentFile= array_pop(explode("/", $_SERVER["SCRIPT_NAME"])); if (isset($_SERVER['QUERY_STRING'])) $query="?".$_SERVER['QUERY_STRING']; $numAnswers = $dbTXT->get('numAnswers', 'MAIN'); $question = $dbTXT->get('question', 'MAIN'); $totVoti = votiTotali($dbTXT); echo "<!-- Poll Form Table --> <form name=\"sondaggio\" method=\"post\" action=\"".$currentFile.$query."\"> <table style=\"width: ".$width."px; background-color: ".$bgColor."; border: ".$border."px solid #000000; padding: ".$cellpadding."px ".$cellpadding."px ".$cellpadding."px ".$cellpadding."px;\"> <!-- QUESTION --> <tr><td colspan=\"2\" style=\"text-align: ".$questionAlign."; background-color: ".$questionBgColor."; font-family: ".$font.",Arial; font-size: ".$questionSize."px; color: ".$questionColor.";\">$question</td></tr>"; for ($i=1; $i<=$numAnswers; $i++) { $anKey = "an".$i; $answer = $dbTXT->get($anKey, 'ANSWERS'); if ( $i&1 ) $bgColor = $oddBgColor; else $bgColor = $evenBgColor; echo "<!-- Answers --> <tr><td style=\"width: ".($width-10)."px; font-family: ".$font.",Arial; font-size: ".$answerSize."px; background-color: ".$bgColor.";\">$answer</td> <td style=\"width: 10px; background-color: ".$bgColor.";\"><input type=\"radio\" name=\"voto\" value=\"$i\" /></td> </tr>"; } echo "<!-- Submit Button --> <tr><td colspan=\"2\" style=\"text-align: center; padding: 5px 0px 0px 0px;\"> <input type=\"submit\" name=\"submit\" value=\"Głosuj\" /></td> </tr></table></form>"; } /******************************************************************************* ******* RITORNA I VOTI TOTALI ****** *******************************************************************************/ function votiTotali(&$dbFile) { $tot=0; $numAnswers = $dbFile->get('numAnswers', 'MAIN'); for ($i=1; $i<=$numAnswers; $i++) { $pollKey = "an".$i."poll"; $tot+=$dbFile->get($pollKey,"ANSWERS"); } return $tot; } ?> Cały scrytp do podglądu jest tutaj: Sonda.RAR Ten post edytował stania 20.05.2005, 11:24:40 |
|
|
![]()
Post
#6
|
|
![]() Grupa: Przyjaciele php.pl Postów: 2 196 Pomógł: 2 Dołączył: 17.01.2004 Skąd: Sosnowiec Ostrzeżenie: (0%) ![]() ![]() |
Nie includujesz gdzieś po raz drugi functions.php? Może użyj wszędzie include_once...
-------------------- |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 35 Pomógł: 0 Dołączył: 20.05.2005 Ostrzeżenie: (10%) ![]() ![]() |
w admin.php jest jeszcze:
Kod include 'config.php'; include 'includes/functions.php'; require_once("includes/configmagik.php"); MYŚLISZ ze coś da zamiana Kod include 'includes/functions.php'; na Kod include_once("includes/functions.php"); Może źle się wyraziłem w miejscu gdzie includuje poll.php działa wszystko dobrze. Tylko juz nie działa mi zmienianie podstron za pomocą np index.php?id=muzyka ...itp za co odpowiedzialna jest pętla: Kod <? if($id == "") { $id = $_GET['id']; } if ($id != "") { if(file_exists($id.".php")) { include($id.".php"); } else { include("glowna.php"); } } else { include("glowna.php"); } ?> Jak wywalę includowanie poll.php z głównej to wtedy pętla działa jak wrzuce sondę (poll.php) to znów nie dziala pętla ...i tak w kółko tylko nie rozumiem co może mieć ta pętla do pliku functions.php Ten post edytował stania 20.05.2005, 11:43:09 |
|
|
![]()
Post
#8
|
|
![]() Grupa: Zarejestrowani Postów: 853 Pomógł: 25 Dołączył: 27.08.2003 Skąd: Katowice Ostrzeżenie: (0%) ![]() ![]() |
Cytat(stania @ 2005-05-20 11:33:57) MYŚLISZ ze coś da zamiana Kod include 'includes/functions.php'; na Kod include_once("includes/functions.php"); dlaczego nie sprobujesz samemu? to tylko dopisanie kilku znakow. Ten post edytował sopel 20.05.2005, 11:42:54 -------------------- "If debugging is the process of removing bugs, then programming must be the process of putting them in..."
sobstel.org |
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 35 Pomógł: 0 Dołączył: 20.05.2005 Ostrzeżenie: (10%) ![]() ![]() |
No pozamieniałem na
Kod include_once("includes/functions.php"); i tam co miały by się pojawiać podstrony pojawia się strona Panelu admina sondy niezależnie czy wpiszę index2.php?id=admin, czy index2.php?id=oferta Już nie wyrabiam noooo |
|
|
![]() ![]() |
![]() |
Aktualny czas: 20.08.2025 - 04:06 |