Hello all,
Im a bit new to php and new to phpfreaks. But thanks in advance for the help!
Im parsing an xml feed into a table. The only problem is that one of the fields can not format properly in the table.
Here is how the page is working now: http://russiancirclesband.com/tour.php
The "With" column is spacing out $OtherArtists out one entry per line, whereas it should have however many $OtherArtists were listed on that line per date.
Here is the PHP
Code:
<?php
$xml_file = "XML FEED";
$xml_City_key = "*SHOWS*SHOW*CITY";
$xml_VenueName_key = "*SHOWS*SHOW*VENUENAME";
$xml_VenueZip_key = "*SHOWS*SHOW*VENUEZIP";
$xml_VenueAddress_key = "*SHOWS*SHOW*VENUEADDRESS";
$xml_TicketUri_key = "*SHOWS*SHOW*TICKETURI";
$xml_Description_key = "*SHOWS*SHOW*DESCRIPTION";
$xml_VenueUri_key = "*SHOWS*SHOW*VENUEURI";
$xml_Date_key = "*SHOWS*SHOW*DATE";
$xml_TimeSet_key= "*SHOWS*SHOW*TIMESET";
$xml_State_key = "*SHOWS*SHOW*STATE";
$xml_Country_key = "*SHOWS*SHOW*COUNTRY";
$xml_OtherArtists_key = "*SHOWS*SHOW*OTHERARTISTS*NAME";
$Show_array = array();
$counter = 0;
class xml_Show{
var $City, $VenueName, $VenueZip, $VenueAddress, $TicketUri, $Description, $VenueUri, $Date, $TimeSet, $State, $Country, $OtherArtists ;
}
function startTag($parser, $data){
global $current_tag;
$current_tag .= "*$data";
}
function endTag($parser, $data){
global $current_tag;
$tag_key = strrpos($current_tag, '*');
$current_tag = substr($current_tag, 0, $tag_key);
}
function contents($parser, $data){
global $current_tag, $xml_City_key, $xml_VenueName_key, $xml_VenueZip_key, $xml_VenueAddress_key, $xml_TicketUri_key, $xml_Description_key, $xml_VenueUri_key, $xml_Date_key,$xml_TimeSet_key, $xml_State_key, $xml_Country_key, $xml_OtherArtists_key, $counter, $Show_array;
switch($current_tag){
case $xml_City_key:
$Show_array[$counter] = new xml_Show();
$Show_array[$counter]->City = $data;
break;
case $xml_VenueName_key:
$Show_array[$counter]->VenueName = $data;
break;
case $xml_VenueZip_key:
$Show_array[$counter]->VenueZip = $data;
break;
case $xml_VenueAddress_key:
$Show_array[$counter]->VenueAddress = $data;
break;
case $xml_TicketUri_key:
$Show_array[$counter]->TicketUri = $data;
break;
case $xml_Description_key:
$Show_array[$counter]->Description = $data;
break;
case $xml_VenueUri_key:
$Show_array[$counter]->VenueUri = $data;
break;
case $xml_Date_key:
$Show_array[$counter]->Date = $data;
break;
case $xml_TimeSet_key:
$Show_array[$counter]->TimeSet = $data;
break;
case $xml_State_key:
$Show_array[$counter]->State = $data;
break;
case $xml_Country_key:
$Show_array[$counter]->Country = $data;
break;
case $xml_OtherArtists_key:
$Show_array[$counter]->OtherArtists = $data;
$counter++;
break;
}
}
$xml_parser = xml_parser_create();
xml_set_element_handler($xml_parser, "startTag", "endTag");
xml_set_character_data_handler($xml_parser, "contents");
$data = file_get_contents($xml_file);
if(!(xml_parse($xml_parser, $data))){
die("Error on line " . xml_get_current_line_number($xml_parser));
}
xml_parser_free($xml_parser);
?>
<html>
<head>
<title>Russian Circles - Tour</title>
<style type="text/css">
<!--
#blog {
padding: 15px 15px 15px 60px;
top: 400px;
}
body {
background-image: url(tiledis.gif);
background-repeat: repeat-x;
background-color:#000000;
}
a:link {
color: #FFFFFF;
text-decoration:underline;
}
a:visited {
color: #FFFFFF;
text-decoration:underline;
}
.style1 {
font-family: 'Lucida Grande', Verdana, Arial, Sans-Serif;
font-size: 12px;
color: #ffffff;
}
.style2 {
font-family: 'Lucida Grande', Verdana, Arial, Sans-Serif;
font-size: 12px;
color: #4e4e4e;
}
#whole {
position:absolute;
width:850px;
z-index:1;
top: 0px;
margin-left:auto;
margin-right:auto;
background-color:#ffffff;
}
body,td,th {
color: #FFF;
}
-->
</style>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"></head>
<body>
<table width="850" align="center" border="1">
<tr>
<td width="100"><div align="center">
<span class="style2">
<u>Date</u>
</span></div>
</td>
<td width="300"><div align="center">
<span class="style1">
<u>Location</u>
</span>
</td></div>
<td width=250"><div align="center">
<span class="style1">
<u>Venue</u>
</span>
</td>
<td width="350"><div align="center">
<span class="style1">
<u>With</u>
</div>
</span>
</td>
<td width="250"><div align="center">
<span class="style1">
<u>Tickets</u>
</div>
</span>
</td>
</tr>
<span class="style1"><div align="center">
<?php
for($x=0;$x<count($Show_array);$x++){
echo "<tr>";
echo "<td>";
echo "t" . $Show_array[$x]->Date . "n";
echo "</td>";
echo "<td>";
if ($Show_array[$x]->Country == "United States") {
echo "t" . $Show_array[$x]->City . ","; echo "t" . $Show_array[$x]->State . " n";
} else {
echo "t" . $Show_array[$x]->City . ","; echo "t" . $Show_array[$x]->Country . " n";
}
echo "</td>";
echo "<td>";
echo "t" . $Show_array[$x]->VenueName . "n";
echo "</td>";
echo "<td>";
echo "t" . $Show_array[$x]->OtherArtists . "";
echo "</td>";
echo "<td>";
if ($Show_array[$x]->TicketUri == "") {
echo "
";
} else {
echo "<a href='" . $Show_array[$x]->TicketUri . "'>Buy Tickets</a>";
}
echo "</td>";
echo "</tr>";
}
?>
</table>
</p>
</div>
<table width="665" border="0" align="center" cellpadding="0" cellspacing="0">
<tr>
<td colspan="5"><div align="center"><a href="http://russiancirclesband.com"><img src="img/rcgeneva.png" width="300" height="38" border="0" /></a><a href="http://russiancirclesband.com"><img src="img/csoct202009.png" width="300" height="38" border="0" /></a></div></td>
</tr>
<tr>
<td colspan="5"><div align="center"></div></td>
</tr>
<tr>
<td width="133"><div align="center"><a href="http://www.myspace.com/russiancircles" target="_blank"><img src="img/rcspace.png" width="133" height="25" border="0" /></a></div></td>
<td width="133"><div align="center"><a href="http://russiancircles.hellomerch.com" target="_blank"><img src="img/rcstore.png" width="133" height="25" border="0" /></a></div></td>
<td width="133"><div align="center"><a href="http://russiancirclesband.blogspot.com/" target="_blank"><img src="img/rcnews.png" width="133" height="25" border="0" /></a></div></td>
<td width="133"><div align="center"><a href="contact.html" target="_self"><img src="img/rccontacts.png" width="133" height="25" border="0" /></a></div></td>
<td width="133"><div align="center"><a href="http://www.myspace.com/russiancircles" target="_blank"><img src="img/rctour.png" width="133" height="25" border="0" /></a></div></td>
</div>
</tr>
</table>
</body>
</html>
and here is a sample of the xml:
Code: <shows xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://feeds.artistdata.com/_css/shows.xsd">
<show>
<recordKey></recordKey>
<name><![CDATA[]]></name>
<city><![CDATA[Brooklyn]]></city>
<venueName><![CDATA[Knitting Factory]]></venueName>
<venueZip></venueZip>
<venuePhone>(347)529-6696</venuePhone>
<venueAddress><![CDATA[361 Metropolitan Ave]]></venueAddress>
<ticketURI><![CDATA[]]></ticketURI>
<description><![CDATA[]]></description>
<ageLimit>All Ages</ageLimit>
<venueURI><![CDATA[http://ny.knittingfactory.com/index.php]]></venueURI>
<ticketPrice><![CDATA[ADV $10 DOOR $12]]></ticketPrice>
<date>2009-12-03</date>
<timeSet>20:30:00</timeSet>
<timeDoors></timeDoors>
<stateAbbreviation>NY</stateAbbreviation>
<state>New York</state>
<countryAbbreviation>US</countryAbbreviation>
<country>United States</country>
<otherArtists>
<name><![CDATA[Cast Spells]]></name>
<uri><![CDATA[http://myspace.com/castspells]]></uri>
</otherArtists>
<artistname>Good Old War</artistname>
<artistKey></artistKey>
</show>
</shows>
So obviously the wall Other Artists are being called is slightly different, but im not exactly sure what is happening. to see what JUST $OtherArtists echo'ing would look like, check out: http://russiancirclesband.com/tour2.php.
Not sure what my next move is.
Thanks again!
IF Statement & Two Tables With Different Echoes
I'm retrieving two tables in a single query using UNION ALL, like so:Code: $query = "SELECT * FROM film UNION ALL SELECT * FROM people ORDER BY id DESC LIMIT 5 ";Now each of those tables,
Undefined variable: adHTML
Hello:While checking my site error logs, I've noticed one repetitive error that fills the log file. The error is "PHP Notice: Undefined variable: adHTML in /.../bot_jrheader.php on line
Parse String
I need to parse the string below into three variables. How would I do that?john + 10/20/2008 - 10/30/2008+ and - are separators
Greek characters in php
Hi,I'm making a script and I m using for first time greek characters.I started to write a simple drop down menu that loads some city names from the database. The names are in Greek in the database and
PDO returns erroneous columns from within pdt
Hi All,This is a truly weird behavior:When using a simple pdo fetch, erroneous columns are returned!Steps to reproduce:------------------------------------------------------------ -----------1.create
the problem with str_replace
$str="hahahahahahahahahahahahahaha";$nn=1;$str=str_replace('ha','MyGod',$str,$nn);echo $str;the result is MyGodMyGodMyGodMyGodMyGodMyGodMyGodMyGodMyGodMyGodMyGodMyGodMyGodMyGodWhy $nn has no
data type in column definition
Hi,
help understanding hidden input w/ php
hello i'm doing a tutorial where there are multiple forms for an edit page for a user to update their info... there's a section of the code i dont really understand how it works...here's code:php:if
how can i expire the submitted page using session.
hi,i'm new to php world.i'm using "post" method.when i submit it,data goes to database successfully.BUT when i click the back button of browser(IE) the previouspage will appear.how can i
Hi, explode and strstr.
Hi, I seem to be confused about the strstr function, eg. i have a string like:"a.b.c.d.e.f""a.b.c.d.e"I always want it to split at the second "." from the end, so