12. januar 2005 - 23:25Der er
17 kommentarer og 1 løsning
Problemer med datovisning
Jeg er ved at lave en lille kalender der smider de næste 5 koncerter ud: Jeg kan ikke få den til at vise datoen som jeg gerne vil have den. Scriptet:
<?PHP mysql_connect ("xxxx", "xxxx", "xxxx") or die (mysql_error()); mysql_select_db ("xxxx") or die (mysql_error());
$test = mysql_query('SELECT `Dato` , `Band` ' . ' FROM `kalender` ' . ' WHERE `Band` != "Lukket" AND `Dato` >= CURDATE() LIMIT 5') or die (mysql_error()); ?> <table border="1"> <? while ($row = mysql_fetch_array($test)) {?> <tr> <td>Dato</td> <td><?=$row["Dato"]?></td> </tr> <tr> <td>Band</td> <td><?=$row["Band"]?></td> </tr> <tr> <td colspan="2"> </td> </tr> <? }?> </table>
Feltet "Dato" er i date format, og jeg skulle meget gerne have den til at udskrive f.eks. "13/1" i steder for "2005-01-13". Jeg har forsøgt at indsætte alle muligt former for thing omkring "=$row["Band"]" men jeg kan ikke få det til at virke. Nogen gode forslag?
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
Jeg har tjekker den og fundet stedet om DATE_FORMET. Jeg modtager dog stadig en fejl når jeg indsætter den i select:
$test = mysql_query('SELECT `Dato` , `Band` ' . ' FROM `kalender` ' . ' WHERE `Band` != "Lukket" AND `Dato` >= CURDATE() DATE_FORMAT(Dato, '%d/%c') AS Dato LIMIT 5' ) or die (mysql_error());
Fejlen jeg modtager er: Parse error: parse error, unexpected '%' in test.php on line 15
Feltnavn Datatype Attributter Nulværdi Standardværdi Ekstra Handling koncertID tinyint(4) Nej auto_increment Dato date Nej 0000-00-00 Band text Nej Support text Nej Pris text Nej Forsalg text Nej Start text Nej
Et par records:
koncertID Dato Band Support Pris Forsalg Start 2 2005-01-14 Rock Disco DJ Aften 20 Nej 2200 4 2005-01-15 80´er Metal Disco DJ Aften 20 Nej 2200
CREATE TABLE `kalender` ( `koncertID` tinyint(4) NOT NULL auto_increment, `Dato` date NOT NULL default '0000-00-00', `Band` text NOT NULL, `Support` text NOT NULL, `Pris` text NOT NULL, `Forsalg` text NOT NULL, `Start` text NOT NULL, PRIMARY KEY (`koncertID`) ) TYPE=MyISAM AUTO_INCREMENT=14 ;
# # Data dump for tabellen `kalender` #
INSERT INTO `kalender` VALUES (1, '2005-01-13', 'American Heartbreaks', 'DJ', '50', 'Ja', '2200'); INSERT INTO `kalender` VALUES (2, '2005-01-14', 'Rock Disco', 'DJ Aften', '20', 'Nej', '2200'); INSERT INTO `kalender` VALUES (4, '2005-01-15', '80´er Metal Disco', 'DJ Aften', '20', 'Nej', '2200');
Sjovt nok virker det hos mig: SELECT DATE_FORMAT( `Dato` , '%d/%c' ) AS `NyDato` , `Band` FROM `kalender` WHERE `Band` != "Lukket" AND `Dato` >= CURDATE( ) LIMIT 5
NyDato Band 13/1 American Heartbreaks 14/1 Rock Disco 15/1 80´er Metal Disco
Hmm det tror jeg ikke. Jeg bruger en jeg har til rådighed på et b-one.net hotel. Når jeg laver den som en forespørgsel i MySQL virker det også fint, men ikke i php dokumentet.
$test = mysql_query('SELECT DATE_FORMAT( `Dato` , '%d/%c' ) AS `NyDato` , `Band` FROM `kalender` WHERE `Band` != "Lukket" AND `Dato` >= CURDATE( ) LIMIT 5' ) or die (mysql_error()); ?> <table border="1"> <? while ($row = mysql_fetch_array($test)) {?> <tr> <td>Dato</td> <td><?=$row["NyDato"]?></td> </tr> <tr> <td>Band</td> <td><?=$row["Band"]?></td> </tr> <tr> <td colspan="2"> </td> </tr> <? }?> </table>
Har også prøvet med bare med "Dato" nede i tabellen, men stadig den samme fejl i toppen: Parse error: parse error, unexpected '%' in test.php on line 13
Mange tak for hjælpen. Med de sidste tips ser det sådan her ud (og nu virker det):
$test = mysql_query("SELECT DATE_FORMAT( `Dato` , '%d/%c' ) AS `NyDato` , `Band` FROM `kalender` WHERE `Band` != 'Lukket' AND `Dato` >= CURDATE( ) LIMIT 5" ) or die (mysql_error()); ?> <table border="1"> <? while ($row = mysql_fetch_array($test)) {?> <tr> <td>Dato</td> <td><?=$row["NyDato"]?></td> </tr> <tr> <td>Band</td> <td><?=$row["Band"]?></td> </tr> <tr> <td colspan="2"> </td> </tr> <? }?> </table>
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.