No, non tutte le righe sono formattate in quel modo. Correggile.
No, non tutte le righe sono formattate in quel modo. Correggile.
Mattia vi manda a FunCool - Matriz - Directory Gogol - Sfondo rosso per la Birmania
«Tu mi dai fastidio perché ti credi tanto un Dio!» «Bè, dovrò pur prendere un modello a cui ispirarmi, no?» Woody Allen
File data.xml
File index.phpCodice:<link link="nav.php?id=null" var="1" target="_blank" desc="xxx">1</link> <link link="nav.php?id=null" var="1" target="_blank" desc="xxx">2</link> <link link="nav.php?id=null" var="1" target="_blank" desc="xxx">3</link> <link link="nav.php?id=null" var="1" target="_blank" desc="xxx">4</link> <link link="nav.php?id=null" var="1" target="_blank" desc="xxx">5</link> <link link="nav.php?id=null" var="1" target="_blank" desc="xxx">6</link> <link link="nav.php?id=null" var="1" target="_blank" desc="xxx">7</link> <link link="nav.php?id=null" var="2" target="_blank" desc="xxx">8</link> <link link="nav.php?id=null" var="2" target="_blank" desc="xxx">9</link> <link link="nav.php?id=null" var="2" target="_blank" desc="xxx">10</link> <link link="nav.php?id=null" var="2" target="_blank" desc="xxx">11</link> <link link="nav.php?id=null" var="2" target="_blank" desc="xxx">12</link> <link link="nav.php?id=null" var="2" target="_blank" desc="xxx">13</link> <link link="nav.php?id=null" var="2" target="_blank" desc="xxx">14</link>
Errore Che mi viene riportato:Codice PHP:
<?php
$path = "data.xml"; //path del file
$max = 2; //Numero di click max
if(file_exists($path)) {
$xml = simplexml_load_file($path);
} else {
exit("Errore: il file ".$path." non esiste");
}
if(isset($_GET['p'])) {
$add = $_GET['p'] + 1;
$men = $_GET['p'] - 1;
$var = $_GET['p'];
}
if(!isset($_GET['p'])) {
$add = 1;
$men = 1;
$var = 1;
}
if(isset($_GET['p'])) {
if($_GET['p'] == 1) {
$men = 1;
$add = 2;
$var = $_GET['p'];
}
}
if(isset($_GET['p'])) {
if($_GET['p'] == ($max - 1)) {
$add = $max - 1 ."&n=true";
}
}
foreach($xml->children() as $links) {
if($var == $links['var']) {
echo "<a class=\"menu_php\" href=\"".$links['link']."\" target=\"".$links['target']."\">".$links."</a><br />";
}
}
if(isset($_GET['p'])) {
if($_GET['p'] == 1) {
echo "<a href=\"?\">Indietro</a>";
} else {
echo " <a href=\"?p=".$men."\">Indietro</a>";
}
}
if(!isset($_GET['n'])) {
echo " <a href=\"?p=".$add."\">Avanti</a>";
}
?>
Codice:Warning: simplexml_load_file() [function.simplexml-load-file]: data.xml:2: parser error : Extra content at the end of the document in C:\AppServ\www\index.php on line 5 Warning: simplexml_load_file() [function.simplexml-load-file]: <link link="nav.php?id=null" var="1" target="_blank" desc="xxx">2</link> in C:\AppServ\www\index.php on line 5 Warning: simplexml_load_file() [function.simplexml-load-file]: ^ in C:\AppServ\www\index.php on line 5 Fatal error: Call to a member function children() on a non-object in C:\AppServ\www\index.php on line 31
provalo sul web...in php5/ ciaoo
Errore: Fatal error: Call to a member function children() on a non-object in /membri/miki92/php5/index.php on line 31
File qui
Prova a scrivere "children" in maiuscolo: "Children".
Mattia vi manda a FunCool - Matriz - Directory Gogol - Sfondo rosso per la Birmania
«Tu mi dai fastidio perché ti credi tanto un Dio!» «Bè, dovrò pur prendere un modello a cui ispirarmi, no?» Woody Allen
sostituisci:
conCodice PHP:
foreach($xml->children() as $links) {
Codice PHP:
foreach($xml->link as $links) {
gli errori esistono perchè vanno corretti..
http://miki92.altervista.org/php5/data.xml
crea un file così:
Dacci il codice di data.xml
Il tuo file XML dà errore sia se viene aperto con Firefox che con Internet Explorer.
Mattia vi manda a FunCool - Matriz - Directory Gogol - Sfondo rosso per la Birmania
«Tu mi dai fastidio perché ti credi tanto un Dio!» «Bè, dovrò pur prendere un modello a cui ispirarmi, no?» Woody Allen
Grazie funcool, avevo mancato i tag più importanti, però ora funziona abbastanza bene, cioè io ho 14 link e me ne mostra sempre 7. Pagina.
Non c'entra nulla il fatto che le prime sette righe hanno var="1" e le altre sette hanno var="2"?
Mattia vi manda a FunCool - Matriz - Directory Gogol - Sfondo rosso per la Birmania
«Tu mi dai fastidio perché ti credi tanto un Dio!» «Bè, dovrò pur prendere un modello a cui ispirarmi, no?» Woody Allen
Testato e funzionante.
Per le prove ho utilizzato questo XML.Codice PHP:
<?php
$path = "data.xml"; //path del file
$max = 2; //Numero di click max
if(file_exists($path))
$xml = simplexml_load_file($path);
else
exit("Errore: il file ".$path." non esiste");
if(!isset($_GET['p']))
$_GET['p']=1;
$add=$_GET['p']+1;
$men=$_GET['p']-1;
$var=$_GET['p'];
foreach($xml->children() as $links) {
$vars[]=$links['var'];
if($var == $links['var']){
echo "<a class=\"menu_php\" href=\"".$links['link']."\" target=\"".$links['target']."\">".$links."</a><br />";
}}
if(in_array($add,$vars))
echo " <a href=\"?p=".$add."\">Avanti</a>";
if(in_array($men,$vars))
echo " <a href=\"?p=".$men."\">Indietro</a>";
?>
Con questo pezzo di codice fai scrivere solo i link che hanno il valore di var uguale a $var, quindi vengono scritti solo sette link:
Codice PHP:
if($var == $links['var']) {
Mattia vi manda a FunCool - Matriz - Directory Gogol - Sfondo rosso per la Birmania
«Tu mi dai fastidio perché ti credi tanto un Dio!» «Bè, dovrò pur prendere un modello a cui ispirarmi, no?» Woody Allen
Ero in ritardo comunque anche nello script di Probid c'è lo stesso controllo.
Mattia vi manda a FunCool - Matriz - Directory Gogol - Sfondo rosso per la Birmania
«Tu mi dai fastidio perché ti credi tanto un Dio!» «Bè, dovrò pur prendere un modello a cui ispirarmi, no?» Woody Allen