strago Posted February 18, 2010 Share Posted February 18, 2010 $download_link = $tube->get('http://www.youtube.com/watch?v='.$_GET['v']); $download_link2 = $tube->get($_GET['v']); if($download_link); { echo <<< END <BR>2. Right click <a href="$download_link">this link</a>. END; } if(!($download_link2)); { echo <<< END <BR>2. Right click <a href="$download_link2">this link</a>. END; } elseif { echo <<< END <P>Error locating download URL. END; } echo <<< END <center><H1>Last 20 Downloads</H1></center> END; include('downloads.html'); } ?> The elseif { echo <<< END <P>Error locating download URL. END; } part is spiting out Parse error: syntax error, unexpected T_ELSEIF in /public_html/index.php on line 59 If some one enters for example '9lp0IWv8QZY' in the form, only the first if should show up. If they enter hxxp://www.youtube.com/watch?v=9lp0IWv8QZY in the form, then just the second if should show up. Then if nether one of those works, then the ELSEIF error needs to come up. Quote Link to comment Share on other sites More sharing options...
GKWelding Posted February 18, 2010 Share Posted February 18, 2010 for a start I'm not a huge fan of the syntax you're using, secondly, I thought it was a colon rather than a semi colon after the if statement, and thirdly you need to put a conditional after your elseif. It needs to be elseif ($a == $b). If you wanted the elseif to be a default incase the if statement wasn't true then you should just do else. I would change your syntax to: $download_link = $tube->get('http://www.youtube.com/watch?v='.$_GET['v']); $download_link2 = $tube->get($_GET['v']); if($download_link) { echo '2. Right click <a href='.$download_link.'>this link</a>.'; } if(!($download_link2)) { echo '<BR>2. Right click <a href='.$download_link2.'>this link</a>.'; } else if { echo '<P>Error locating download URL.</p>'; } else { echo '<center><H1>Last 20 Downloads</H1></center>'; include('downloads.html'); } ?> This is much clearer for people to read and understand in my opinion. If you don't agree then that's fine, I'd try the suggestions I made above to get your code working. Quote Link to comment Share on other sites More sharing options...
teamatomic Posted February 18, 2010 Share Posted February 18, 2010 Thats a heredoc. If you want to echo it out then do so but a heredoc is elseif { $html = <<< END <P>Error locating download URL. END; } the if statements dont need terminating. Your use of double quotes inside of single quotes will not output the value of the var, use "this is a \"$correct\" use of quotes"; HTH Teamatomic Quote Link to comment Share on other sites More sharing options...
GKWelding Posted February 18, 2010 Share Posted February 18, 2010 Thats a heredoc. If you want to echo it out then do so but a heredoc is elseif { $html = <<< END <P>Error locating download URL. END; } the if statements dont need terminating. Your use of double quotes inside of single quotes will not output the value of the var, use "this is a \"$correct\" use of quotes"; HTH Teamatomic that was just me being lazy and not checking my code... dammit... Quote Link to comment Share on other sites More sharing options...
strago Posted February 18, 2010 Author Share Posted February 18, 2010 Thanks. I'm actually the epitome of a php n00bie. (Think of a third grader trying to figure out algebra!) I just wanted it working and didn't care how I could get it to work! When I found these forums, it was like I found heaven!! Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.