- Home
- Categorie
- Coding e Sistemistica
- PHP
- gestire xml con PHP e problemi con le date !!!
-
gestire xml con PHP e problemi con le date !!!
Ciao raga , io ho un piccolo problema , ho scritto questo piccolo file php , che va a leggere all'interno del database , e che mi crea direttamente un file pseudo xml per intenderci , molto comodo e veloce , lo uso in parecchie piccole applicazioni , fatte con flash , però non riesco a venire fuori da un inghippo , quando vado a fare l'estrazione in ordine di data ( che premetto vado a inserire io attraverso un pannellino , fatto ad hoc ) ,queste ultime mi si mettono in un ordine un po strano , mi spiego meglio sembra quasi che non estragga le date di ogni anno ma estraga solamente le date dell'anno scorso 2006 , quelle del 2007 non le vede , cosa potrebbe essere ??
vi allego anche il file che uso .
[php]
<?php
// Eseguo le operazioni di connessione al database MySQL
$connessione = mysql_connect("localhost", "Sql*****", "password");
mysql_select_db("database_name", $connessione);$selezionedati = "SELECT TITOLO, TESTONOTIZIA, ID, LINK, DATAPUBBLICAZIONE, SPECIFICHE, date_format(DATA,'%d/%m/%Y')
DATA
FROM prova1 ORDER BY 'data' DESC LIMIT 10";
$query = mysql_query($selezionedati) or die(mysql_error());// Modifico l'intestazione e il tipo di documento da PHP a XML
@header("Content-type: text/xml");
?>
<?phpecho ("<?xml version="1.0" encoding="UTF-8"?>");
?>
<?php
echo ("<news>");
while($array = mysql_fetch_array($query)){
extract($array);
echo "
<item newsid="0$ID">
<titolo><![CDATA[$TITOLO]]>
</titolo>
<testonotizia><![CDATA[$TESTONOTIZIA]]>
</testonotizia>
<link><![CDATA[index.php?id_menu=8&ID=$ID]]>
</link>
<datapubblicazione><![CDATA[$DATA]]></datapubblicazione>
</item>"
;
}
echo ("</news>");
?>[/php]e questo è il file xml che creo
<?xml version="1.0" encoding="UTF-8" ?>
- <news>
- <item newsid="090">
- <titolo>
- <![CDATA[ ]]>f(clean);
</titolo>- <testonotizia>
- <![CDATA[ ]]>f(clean);
</testonotizia>- <link>
- <![CDATA[ index.php?id_menu=8&ID=90 ]]>f(clean);
</link>- <datapubblicazione>
- <![CDATA[ 23/06/2007 ]]>f(clean);
</datapubblicazione></item>
- <item newsid="089">
- <titolo>
- <![CDATA[ ]]>f(clean);
</titolo>- <testonotizia>
- <![CDATA[ ]]>f(clean);
</testonotizia>- <link>
- <![CDATA[ index.php?id_menu=8&ID=89 ]]>f(clean);
</link>- <datapubblicazione>
- <![CDATA[ 20/07/2007 ]]>f(clean);
</datapubblicazione></item>
- <item newsid="087">
- <titolo>
- <![CDATA[ ]]>f(clean);
</titolo>- <testonotizia>
- <![CDATA[ ]]>f(clean);
</testonotizia>- <link>
- <![CDATA[ index.php?id_menu=8&ID=87 ]]>f(clean);
</link>- <datapubblicazione>
- <![CDATA[ 13/06/2007 ]]>f(clean);
</datapubblicazione></item>
- <item newsid="086">
- <titolo>
- <![CDATA[ ]]>f(clean);
</titolo>- <testonotizia>
- <![CDATA[ ]]>f(clean);
</testonotizia>- <link>
- <![CDATA[ index.php?id_menu=8&ID=86 ]]>f(clean);
</link>- <datapubblicazione>
- <![CDATA[ 18/07/2007 ]]>f(clean);
</datapubblicazione></item>
- <item newsid="083">
- <titolo>
- <![CDATA[ ]]>f(clean);
</titolo>- <testonotizia>
- <![CDATA[ ]]>f(clean);
</testonotizia>- <link>
- <![CDATA[ index.php?id_menu=8&ID=83 ]]>f(clean);
</link>- <datapubblicazione>
- <![CDATA[ 05/05/2007 ]]>f(clean);
</datapubblicazione></item>
- <item newsid="028">
- <titolo>
- <![CDATA[ ]]>f(clean);
</titolo>- <testonotizia>
- <![CDATA[ ]]>f(clean);
</testonotizia>- <link>
- <![CDATA[ index.php?id_menu=8&ID=28 ]]>f(clean);
</link>- <datapubblicazione>
- <![CDATA[ 14/09/2003 ]]>f(clean);
</datapubblicazione></item>
</news>
qualcuno per cortesia saprebbe aiutarmi ??:bho:
-
@Elvenesian said:
Ciao raga , io ho un piccolo problema , ho scritto questo piccolo file php , che va a leggere all'interno del database , e che mi crea direttamente un file pseudo xml per intenderci , molto comodo e veloce , lo uso in parecchie piccole applicazioni , fatte con flash , però non riesco a venire fuori da un inghippo , quando vado a fare l'estrazione in ordine di data ( che premetto vado a inserire io attraverso un pannellino , fatto ad hoc ) ,queste ultime mi si mettono in un ordine un po strano , mi spiego meglio sembra quasi che non estragga le date di ogni anno ma estraga solamente le date dell'anno scorso 2006 , quelle del 2007 non le vede , cosa potrebbe essere ??
vi allego anche il file che uso .
[php]
<?php
// Eseguo le operazioni di connessione al database MySQL
$connessione = mysql_connect("localhost", "Sql*****", "password");
mysql_select_db("database_name", $connessione);$selezionedati = "SELECT TITOLO, TESTONOTIZIA, ID, LINK, DATAPUBBLICAZIONE, SPECIFICHE, date_format(DATA,'%d/%m/%Y')
DATA
FROM prova1 ORDER BY 'data' DESC LIMIT 10";
$query = mysql_query($selezionedati) or die(mysql_error());// Modifico l'intestazione e il tipo di documento da PHP a XML
@header("Content-type: text/xml");
?>
<?phpecho ("<?xml version="1.0" encoding="UTF-8"?>");
?>
<?php
echo ("<news>");
while($array = mysql_fetch_array($query)){
extract($array);
echo "
<item newsid="0$ID">
<titolo><![CDATA[$TITOLO]]>
</titolo>
<testonotizia><![CDATA[$TESTONOTIZIA]]>
</testonotizia>
<link><![CDATA[index.php?id_menu=8&ID=$ID]]>
</link>
<datapubblicazione><![CDATA[$DATA]]></datapubblicazione>
</item>"
;
}
echo ("</news>");
?>[/php]e questo è il file xml che creo
qualcuno per cortesia saprebbe aiutarmi ??:bho:
opppsss , mi sa che ho messo in crisi nche voi con questa domanda !!!!xx:x
-
Ciao
Io ho avuto lo stesso problema, e ho capito che il "casino" lo fa il date_format.
Sicuramente ci sarà qualche modo più pulito per risolverlo, io feci cosi: ho tolto il data_format dalla select in modo che i record li prendi ordinati come vuoi tu, con l'order By data DESC, poi, una volta messo la data in una variabile $DT, con delle semplice funzioni stringhe, facevo stampare la data nel formato che volevo. Un pò machcinoso ma funzionante...
Ciao