/    Sign up×
Community /Pin to ProfileBookmark

More Variable URL woes.

My array so far…

[code=php]<?php
include(“../../inserts/head.htm”);
echo(”
<link type=”text/css” rel=”stylesheet” href=”../../setup.css”>
“);

$inserts=array(“comic000.htm”,”comic001.htm”, “comic002.htm”, (200+ inserts) “comic232.htm”, “comic233.htm”, “comic234.htm”);

$max = count($inserts); // get total inserts

if ($i =0<>1) {$chronologylink=”../../chronology.php?semester=0″;}
else if ($i =2<>4) {$chronologylink=”../../chronology.php?semester=1&month=0″;}
else if ($i =5<>22) {$chronologylink=”../../chronology.php?semester=1&month=1″;}
else if ($i =23<>41) {$chronologylink=”../../chronology.php?semester=1&month=2″;}
else if ($i =42<>58) {$chronologylink=”../../chronology.php?semester=1&month=3″;}
else if ($i =59<>68) {$chronologylink=”../../chronology.php?semester=2&month=0″;}
else if ($i =69<>88) {$chronologylink=”../../chronology.php?semester=2&month=1″;}
else if ($i =89<>96) {$chronologylink=”../../chronology.php?semester=2&month=2″;}
else if ($i =97<>113) {$chronologylink=”../../chronology.php?semester=2&month=3″;}
else if ($i =114<>115) {$chronologylink=”../../chronology.php?semester=3&month=0″;}
else if ($i =116<>135) {$chronologylink=”../../chronology.php?semester=3&month=1″;}
else if ($i =136<>154) {$chronologylink=”../../chronology.php?semester=3&month=2″;}
else if ($i =155<>173) {$chronologylink=”../../chronology.php?semester=3&month=3″;}
else if ($i =174<>176) {$chronologylink=”../../chronology.php?semester=3&month=4″;}
else if ($i =177<>188) {$chronologylink=”../../chronology.php?semester=4&month=0″;}
else if ($i =189<>206) {$chronologylink=”../../chronology.php?semester=4&month=1″;}
else if ($i =207<>218) {$chronologylink=”../../chronology.php?semester=4&month=2″;}
else if ($i =219<>234) {$chronologylink=”../../chronology.php?semester=4&month=3″;}

$i = (isset($_GET[‘page’])) ? $_GET[‘page’] : 0;
$iprev = ($i == 0) ? “./comic-first.php” : “comics.php?page=” . ($i – 1);
$inext = ($i == $max -1) ? “./comic-last.php” : “comics.php?page=” . ($i +1);
include $inserts [$i]; ?>

<ul id=”comiclink”>
<li><a href=”comic-first.php”>First</a></li>
<a href=”<?php echo $iprev; ?>”>Previous</a></li>
<li><a href=”../../index.php”>Back to Main</a></li>

<li><a href=”<?php echo $chronologylink; ?>”>Back to Chronology</a></li>

<a href=”<?php echo $inext; ?>”>Next</a></li>
<li><a href=”comics.php?page=<?php echo $max – 1; ?>”>Last</a></li>
</ul>
</body>
</html>
[/code]

Now, what happens with my Back to Chronology link is this:

If I have the “else”s in the [i]else if ($i =#<>#) {$chronologylink=”../../chronology.php?semester=#&month=#”;}[/i] then [i]$chronologylink[/i] is always [i]../../chronology.php?semester=0″[/i]

If I don’t have the “else”s in, then [i]$chronologylink[/i] is always [i]../../chronology.php?semester=4&month=3″[/i]

Where am I going wrong?

to post a comment
PHP

12 Comments(s)

Copy linkTweet thisAlerts:
@chongJul 28.2005 — "if ($i =0<>1)"

is '<>' a shortcut operator?

i think u r trying to do:

if ($i >= 0 && $i <=1)

but going by the logical flow, it could be simplified to

if ($i < 2)...

else if ($i < 5) ...

else if ($i < 23) ...
Copy linkTweet thisAlerts:
@NogDogJul 28.2005 — Another way to go about this would be to build a data structure:
[code=php]
$urls =
array(
array('min'=>0, 'max'=>1, 'semester'=>0, 'month'=>NULL),
array('min'=>2, 'max'=>4, 'semester'=>1, 'month'=>0),
array('min'=>5, 'max'=>22, 'semester'=>1, 'month'=>1),
array('min'=>23, 'max'=>41, 'semester'=>1, 'month'=>2),
array('min'=>42, 'max'=>58, 'semester'=>1, 'month'=>3),
array('min'=>59, 'max'=>68, 'semester'=>2, 'month'=>0),
array('min'=>69, 'max'=>88, 'semester'=>2, 'month'=>1),
array('min'=>89, 'max'=>96, 'semester'=>2, 'month'=>2),
array('min'=>97, 'max'=>113, 'semester'=>2, 'month'=>3),
array('min'=>114, 'max'=>115, 'semester'=>3, 'month'=>0),
array('min'=>116, 'max'=>135, 'semester'=>3, 'month'=>1),
array('min'=>136, 'max'=>154, 'semester'=>3, 'month'=>2),
array('min'=>155, 'max'=>173, 'semester'=>3, 'month'=>3),
array('min'=>174, 'max'=>176, 'semester'=>3, 'month'=>4),
array('min'=>177, 'max'=>188, 'semester'=>4, 'month'=>0),
array('min'=>189, 'max'=>206, 'semester'=>4, 'month'=>1),
array('min'=>207, 'max'=>218, 'semester'=>4, 'month'=>2),
array('min'=>219, 'max'=>234, 'semester'=>4, 'month'=>3)
);
$found = FALSE;
foreach($urls as $key => $val)
{
if($i >= $urls[$key]['min'] and $i <= $urls[$key]['max'])
{
$found = TRUE;
$chronologylink="../../chronology.php?semester=".$urls[$key]['semester'];
if(!empty($urls[$key]['month']))
{
$chronologylink .= "&month=".$urls[$key]['month'];
}
break;
}
}
if(!$found)
{
# $i wasn't found in the array, so you need error-handling here
}
else
{
# found it, so $chronologylink is now ready to use
}
[/code]

I like this over a whole bunch of if/else statements, because it keeps all the data in one place and easier to read, so that if you add data or want to rearrange it, it's easier to do.

PS: "<>" is the same as "!=" in PHP, it does not specify a range of numbers.
Copy linkTweet thisAlerts:
@Mr_Initial_ManauthorJul 28.2005 — So I should have the following?

[code=php]<?php
include("../../inserts/head.htm");
echo("
<link type="text/css" rel="stylesheet" href="../../setup.css">
");

$inserts=array("comic000.htm","comic001.htm", "comic002.htm", (200+ inserts) "comic232.htm", "comic233.htm", "comic234.htm");

$max = count($inserts); // get total inserts

$urls =
array(
array('min'=>0, 'max'=>1, 'semester'=>0, 'month'=>NULL),
array('min'=>2, 'max'=>4, 'semester'=>1, 'month'=>0),
array('min'=>5, 'max'=>22, 'semester'=>1, 'month'=>1),
array('min'=>23, 'max'=>41, 'semester'=>1, 'month'=>2),
array('min'=>42, 'max'=>58, 'semester'=>1, 'month'=>3),
array('min'=>59, 'max'=>68, 'semester'=>2, 'month'=>0),
array('min'=>69, 'max'=>88, 'semester'=>2, 'month'=>1),
array('min'=>89, 'max'=>96, 'semester'=>2, 'month'=>2),
array('min'=>97, 'max'=>113, 'semester'=>2, 'month'=>3),
array('min'=>114, 'max'=>115, 'semester'=>3, 'month'=>0),
array('min'=>116, 'max'=>135, 'semester'=>3, 'month'=>1),
array('min'=>136, 'max'=>154, 'semester'=>3, 'month'=>2),
array('min'=>155, 'max'=>173, 'semester'=>3, 'month'=>3),
array('min'=>174, 'max'=>176, 'semester'=>3, 'month'=>4),
array('min'=>177, 'max'=>188, 'semester'=>4, 'month'=>0),
array('min'=>189, 'max'=>206, 'semester'=>4, 'month'=>1),
array('min'=>207, 'max'=>218, 'semester'=>4, 'month'=>2),
array('min'=>219, 'max'=>234, 'semester'=>4, 'month'=>3)
);
$found = FALSE;
foreach($urls as $key => $val)
{
if($i >= $urls[$key]['min'] and $i <= $urls[$key]['max'])
{
$found = TRUE;
$chronologylink="../../chronology.php?semester=".$urls[$key]['semester'];
if(!empty($urls[$key]['month']))
{
$chronologylink .= "&month=".$urls[$key]['month'];
}
break;
}
}
if(!$found)
{
# $i wasn't found in the array, so you need error-handling here
}
else
{
# found it, so $chronologylink is now ready to use
}

iprev = ($i == 0) ? "./comic-first.php" : "comics.php?page=" . ($i - 1);
$inext = ($i == $max -1) ? "./comic-last.php" : "comics.php?page=" . ($i +1);
include $inserts [$i]; ?>


<ul id="comiclink">
<li><a href="comic-first.php">First</a></li>
<a href="<?php echo $iprev; ?>">Previous</a></li>
<li><a href="../../index.php">Back to Main</a></li>

<li><a href="<?php echo $chronologylink; ?>">Back to Chronology</a></li>

<a href="<?php echo $inext; ?>">Next</a></li>
<li><a href="comics.php?page=<?php echo $max - 1; ?>">Last</a></li>
</ul>
</body>
</html>[/code]
Copy linkTweet thisAlerts:
@NogDogJul 28.2005 — I think so (it's all a lot to try to take in at once ? ). Only change I would make is the checks at the end of my code. Instead of this...
[code=php]
if(!$found)
{
# $i wasn't found in the array, so you need error-handling here
}
else
{
# found it, so $chronologylink is now ready to use
}
[/code]

...just do something like this (I'm just trying to handle unforeseen error situations)...
[code=php]
if(!$found)
{
$chronologylink = "../../chronology.php"
}
[/code]

...replacing the link I used above with whatever you would like to be the default link in case something odd happens (like a curious/malicious/stupid user types in some strange value in the URL).
Copy linkTweet thisAlerts:
@Mr_Initial_ManauthorJul 29.2005 — I tried what you said, NogDog. Here's my array:

[code=php]
<?php
include("../../inserts/head.htm");
echo("
<link type="text/css" rel="stylesheet" href="../../setup.css">
");

$inserts=array("comic000.htm","comic001.htm", "comic002.htm", "comic003.htm", "comic004.htm", "comic005.htm", "comic006.htm", "comic007.htm", "comic008.htm", "comic009.htm", "comic010.htm", "comic011.htm", "comic012.htm", "comic013.htm", "comic014.htm", "comic015.htm", "comic016.htm", "comic017.htm", "comic018.htm", "comic019.htm", "comic020.htm", "comic021.htm", "comic022.htm", "comic023.htm", "comic024.htm", "comic025.htm", "comic026.htm", "comic027.htm", "comic028.htm", "comic029.htm", "comic030.htm", "comic031.htm", "comic032.htm", "comic033.htm", "comic034.htm", "comic035.htm", "comic036.htm", "comic037.htm", "comic038.htm", "comic039.htm", "comic040.htm", "comic041.htm", "comic042.htm", "comic043.htm", "comic044.htm", "comic045.htm", "comic046.htm", "comic047.htm", "comic048.htm", "comic049.htm", "comic050.htm", "comic051.htm", "comic052.htm", "comic053.htm", "comic054.htm", "comic055.htm", "comic056.htm", "comic057.htm", "comic058.htm", "comic059.htm", "comic060.htm", "comic061.htm", "comic062.htm", "comic063.htm", "comic064.htm", "comic065.htm", "comic066.htm", "comic067.htm", "comic068.htm", "comic069.htm", "comic070.htm", "comic071.htm", "comic072.htm", "comic073.htm", "comic074.htm", "comic075.htm", "comic076.htm", "comic077.htm", "comic078.htm", "comic079.htm", "comic080.htm", "comic081.htm", "comic082.htm", "comic083.htm", "comic084.htm", "comic085.htm", "comic086.htm", "comic087.htm", "comic088.htm", "comic089.htm", "comic090.htm", "comic091.htm", "comic092.htm", "comic093.htm", "comic094.htm", "comic095.htm", "comic096.htm", "comic097.htm", "comic098.htm", "comic099.htm", "comic100.htm", "comic101.htm", "comic102.htm", "comic103.htm", "comic104.htm", "comic105.htm", "comic106.htm", "comic107.htm", "comic108.htm", "comic109.htm", "comic110.htm", "comic111.htm", "comic112.htm", "comic113.htm", "comic114.htm", "comic115.htm", "comic116.htm", "comic117.htm", "comic118.htm", "comic119.htm", "comic120.htm", "comic121.htm", "comic122.htm", "comic123.htm", "comic124.htm", "comic125.htm", "comic126.htm", "comic127.htm", "comic128.htm", "comic129.htm", "comic130.htm", "comic131.htm", "comic132.htm", "comic133.htm", "comic134.htm", "comic135.htm", "comic136.htm", "comic137.htm", "comic138.htm", "comic139.htm", "comic140.htm", "comic141.htm", "comic142.htm", "comic143.htm", "comic144.htm", "comic145.htm", "comic146.htm", "comic147.htm", "comic148.htm", "comic149.htm", "comic150.htm", "comic151.htm", "comic152.htm", "comic153.htm", "comic154.htm", "comic155.htm", "comic156.htm", "comic157.htm", "comic158.htm", "comic159.htm", "comic160.htm", "comic161.htm", "comic162.htm", "comic163.htm", "comic164.htm", "comic165.htm", "comic166.htm", "comic167.htm", "comic168.htm", "comic169.htm", "comic170.htm", "comic171.htm", "comic172.htm", "comic173.htm", "comic174.htm", "comic175.htm", "comic176.htm", "comic177.htm", "comic178.htm", "comic179.htm", "comic180.htm", "comic181.htm", "comic182.htm", "comic183.htm", "comic184.htm", "comic185.htm", "comic186.htm", "comic187.htm", "comic188.htm", "comic189.htm", "comic190.htm", "comic191.htm", "comic192.htm", "comic193.htm", "comic194.htm", "comic195.htm", "comic196.htm", "comic197.htm", "comic198.htm", "comic199.htm", "comic200.htm", "comic201.htm", "comic202.htm", "comic203.htm", "comic204.htm", "comic205.htm", "comic206.htm", "comic207.htm", "comic208.htm", "comic209.htm", "comic210.htm", "comic211.htm", "comic212.htm", "comic213.htm", "comic214.htm", "comic215.htm", "comic216.htm", "comic217.htm", "comic218.htm", "comic219.htm", "comic220.htm", "comic221.htm", "comic222.htm", "comic223.htm", "comic224.htm", "comic225.htm", "comic226.htm", "comic227.htm", "comic228.htm", "comic229.htm", "comic230.htm", "comic231.htm", "comic232.htm", "comic233.htm", "comic234.htm");

$max = count($inserts); // get total inserts

$urls =
array(
array('min'=>0, 'max'=>1, 'semester'=>0, 'month'=>NULL),
array('min'=>2, 'max'=>4, 'semester'=>1, 'month'=>0),
array('min'=>5, 'max'=>22, 'semester'=>1, 'month'=>1),
array('min'=>23, 'max'=>41, 'semester'=>1, 'month'=>2),
array('min'=>42, 'max'=>58, 'semester'=>1, 'month'=>3),
array('min'=>59, 'max'=>68, 'semester'=>2, 'month'=>0),
array('min'=>69, 'max'=>88, 'semester'=>2, 'month'=>1),
array('min'=>89, 'max'=>96, 'semester'=>2, 'month'=>2),
array('min'=>97, 'max'=>113, 'semester'=>2, 'month'=>3),
array('min'=>114, 'max'=>115, 'semester'=>3, 'month'=>0),
array('min'=>116, 'max'=>135, 'semester'=>3, 'month'=>1),
array('min'=>136, 'max'=>154, 'semester'=>3, 'month'=>2),
array('min'=>155, 'max'=>173, 'semester'=>3, 'month'=>3),
array('min'=>174, 'max'=>176, 'semester'=>3, 'month'=>4),
array('min'=>177, 'max'=>188, 'semester'=>4, 'month'=>0),
array('min'=>189, 'max'=>206, 'semester'=>4, 'month'=>1),
array('min'=>207, 'max'=>218, 'semester'=>4, 'month'=>2),
array('min'=>219, 'max'=>234, 'semester'=>4, 'month'=>3)
);
$found = FALSE;
foreach($urls as $key => $val)
{
if($i >= $urls[$key]['min'] and $i <= $urls[$key]['max'])
{
$found = TRUE;
$chronologylink="../../chronology.php?semester=".$urls[$key]['semester'];
if(!empty($urls[$key]['month']))
{
$chronologylink .= "&month=".$urls[$key]['month'];
}
break;
}
}
if(!$found)
{
$chronologylink = "../../chronology.php"
}
$i = (isset($_GET['page'])) ? $_GET['page'] : 0;
$iprev = ($i == 0) ? "./comic-first.php" : "comics.php?page=" . ($i - 1);
$inext = ($i == $max -1) ? "./comic-last.php" : "comics.php?page=" . ($i +1);
include $inserts [$i]; ?>


<ul id="comiclink">
<li><a href="comic-first.php">First</a></li>
<a href="<?php echo $iprev; ?>">Previous</a></li>
<li><a href="../../index.php">Back to Main</a></li>
<li><a href="<?php echo $chronologylink; ?>">Back to Chronology</a></li>
<a href="<?php echo $inext; ?>">Next</a></li>
<li><a href="comics.php?page=<?php echo $max - 1; ?>">Last</a></li>
</ul>
</body>
</html>
[/code]


What I got was the following message:

Parse error: syntax error, unexpected '}' in C:apachefriendsxampphtdocs!my_pages!coachrandomchronologycomicscomics.php on line 49[/QUOTE]

I also tried this:

[code=php]if(!$found)
{
# $i wasn't found in the array, so you need error-handling here
}
else
{
# found it, so $chronologylink is now ready to use
} [/code]
in place of [code=php]if(!$found)
{
$chronologylink = "../../chronology.php"
} [/code]


While that didn't give me a parse error, the link always went to [I]chronology.php?semester=0[/I]

I have put the entire array up in this post, so you know what you're dealing with. What am I missing here?
Copy linkTweet thisAlerts:
@BeachSideJul 29.2005 — You forgot a semicolon

$chronologylink = "../../chronology.php" <- Right there
Copy linkTweet thisAlerts:
@Mr_Initial_ManauthorJul 29.2005 — Well, that helps with the parse error, but the problems with the link itself still remain. I'm still getting [i]../../chronology.php?semester=0[/i] no matter what insert is used.

So, here's the entire array again:

[code=php]
<?php
include("../../inserts/head.htm");
echo("
<link type="text/css" rel="stylesheet" href="../../setup.css">
");

$inserts=array("comic000.htm","comic001.htm", "comic002.htm", "comic003.htm", "comic004.htm", "comic005.htm", "comic006.htm", "comic007.htm", "comic008.htm", "comic009.htm", "comic010.htm", "comic011.htm", "comic012.htm", "comic013.htm", "comic014.htm", "comic015.htm", "comic016.htm", "comic017.htm", "comic018.htm", "comic019.htm", "comic020.htm", "comic021.htm", "comic022.htm", "comic023.htm", "comic024.htm", "comic025.htm", "comic026.htm", "comic027.htm", "comic028.htm", "comic029.htm", "comic030.htm", "comic031.htm", "comic032.htm", "comic033.htm", "comic034.htm", "comic035.htm", "comic036.htm", "comic037.htm", "comic038.htm", "comic039.htm", "comic040.htm", "comic041.htm", "comic042.htm", "comic043.htm", "comic044.htm", "comic045.htm", "comic046.htm", "comic047.htm", "comic048.htm", "comic049.htm", "comic050.htm", "comic051.htm", "comic052.htm", "comic053.htm", "comic054.htm", "comic055.htm", "comic056.htm", "comic057.htm", "comic058.htm", "comic059.htm", "comic060.htm", "comic061.htm", "comic062.htm", "comic063.htm", "comic064.htm", "comic065.htm", "comic066.htm", "comic067.htm", "comic068.htm", "comic069.htm", "comic070.htm", "comic071.htm", "comic072.htm", "comic073.htm", "comic074.htm", "comic075.htm", "comic076.htm", "comic077.htm", "comic078.htm", "comic079.htm", "comic080.htm", "comic081.htm", "comic082.htm", "comic083.htm", "comic084.htm", "comic085.htm", "comic086.htm", "comic087.htm", "comic088.htm", "comic089.htm", "comic090.htm", "comic091.htm", "comic092.htm", "comic093.htm", "comic094.htm", "comic095.htm", "comic096.htm", "comic097.htm", "comic098.htm", "comic099.htm", "comic100.htm", "comic101.htm", "comic102.htm", "comic103.htm", "comic104.htm", "comic105.htm", "comic106.htm", "comic107.htm", "comic108.htm", "comic109.htm", "comic110.htm", "comic111.htm", "comic112.htm", "comic113.htm", "comic114.htm", "comic115.htm", "comic116.htm", "comic117.htm", "comic118.htm", "comic119.htm", "comic120.htm", "comic121.htm", "comic122.htm", "comic123.htm", "comic124.htm", "comic125.htm", "comic126.htm", "comic127.htm", "comic128.htm", "comic129.htm", "comic130.htm", "comic131.htm", "comic132.htm", "comic133.htm", "comic134.htm", "comic135.htm", "comic136.htm", "comic137.htm", "comic138.htm", "comic139.htm", "comic140.htm", "comic141.htm", "comic142.htm", "comic143.htm", "comic144.htm", "comic145.htm", "comic146.htm", "comic147.htm", "comic148.htm", "comic149.htm", "comic150.htm", "comic151.htm", "comic152.htm", "comic153.htm", "comic154.htm", "comic155.htm", "comic156.htm", "comic157.htm", "comic158.htm", "comic159.htm", "comic160.htm", "comic161.htm", "comic162.htm", "comic163.htm", "comic164.htm", "comic165.htm", "comic166.htm", "comic167.htm", "comic168.htm", "comic169.htm", "comic170.htm", "comic171.htm", "comic172.htm", "comic173.htm", "comic174.htm", "comic175.htm", "comic176.htm", "comic177.htm", "comic178.htm", "comic179.htm", "comic180.htm", "comic181.htm", "comic182.htm", "comic183.htm", "comic184.htm", "comic185.htm", "comic186.htm", "comic187.htm", "comic188.htm", "comic189.htm", "comic190.htm", "comic191.htm", "comic192.htm", "comic193.htm", "comic194.htm", "comic195.htm", "comic196.htm", "comic197.htm", "comic198.htm", "comic199.htm", "comic200.htm", "comic201.htm", "comic202.htm", "comic203.htm", "comic204.htm", "comic205.htm", "comic206.htm", "comic207.htm", "comic208.htm", "comic209.htm", "comic210.htm", "comic211.htm", "comic212.htm", "comic213.htm", "comic214.htm", "comic215.htm", "comic216.htm", "comic217.htm", "comic218.htm", "comic219.htm", "comic220.htm", "comic221.htm", "comic222.htm", "comic223.htm", "comic224.htm", "comic225.htm", "comic226.htm", "comic227.htm", "comic228.htm", "comic229.htm", "comic230.htm", "comic231.htm", "comic232.htm", "comic233.htm", "comic234.htm");

$max = count($inserts); // get total inserts

$urls =
array(
array('min'=>0, 'max'=>1, 'semester'=>0, 'month'=>NULL),
array('min'=>2, 'max'=>4, 'semester'=>1, 'month'=>0),
array('min'=>5, 'max'=>22, 'semester'=>1, 'month'=>1),
array('min'=>23, 'max'=>41, 'semester'=>1, 'month'=>2),
array('min'=>42, 'max'=>58, 'semester'=>1, 'month'=>3),
array('min'=>59, 'max'=>68, 'semester'=>2, 'month'=>0),
array('min'=>69, 'max'=>88, 'semester'=>2, 'month'=>1),
array('min'=>89, 'max'=>96, 'semester'=>2, 'month'=>2),
array('min'=>97, 'max'=>113, 'semester'=>2, 'month'=>3),
array('min'=>114, 'max'=>115, 'semester'=>3, 'month'=>0),
array('min'=>116, 'max'=>135, 'semester'=>3, 'month'=>1),
array('min'=>136, 'max'=>154, 'semester'=>3, 'month'=>2),
array('min'=>155, 'max'=>173, 'semester'=>3, 'month'=>3),
array('min'=>174, 'max'=>176, 'semester'=>3, 'month'=>4),
array('min'=>177, 'max'=>188, 'semester'=>4, 'month'=>0),
array('min'=>189, 'max'=>206, 'semester'=>4, 'month'=>1),
array('min'=>207, 'max'=>218, 'semester'=>4, 'month'=>2),
array('min'=>219, 'max'=>234, 'semester'=>4, 'month'=>3)
);
$found = FALSE;
foreach($urls as $key => $val)
{
if($i >= $urls[$key]['min'] and $i <= $urls[$key]['max'])
{
$found = TRUE;
$chronologylink="../../chronology.php?semester=".$urls[$key]['semester'];
if(!empty($urls[$key]['month']))
{
$chronologylink .= "&month=".$urls[$key]['month'];
}
break;
}
}
if(!$found)
{
$chronologylink = "../../chronology.php";
}
$i = (isset($_GET['page'])) ? $_GET['page'] : 0;
$iprev = ($i == 0) ? "./comic-first.php" : "comics.php?page=" . ($i - 1);
$inext = ($i == $max -1) ? "./comic-last.php" : "comics.php?page=" . ($i +1);
include $inserts [$i]; ?>


<ul id="comiclink">
<li><a href="comic-first.php">First</a></li>
<a href="<?php echo $iprev; ?>">Previous</a></li>
<li><a href="../../index.php">Back to Main</a></li>
<li><a href="<?php echo $chronologylink; ?>">Back to Chronology</a></li>
<a href="<?php echo $inext; ?>">Next</a></li>
<li><a href="comics.php?page=<?php echo $max - 1; ?>">Last</a></li>
</ul>
</body>
</html>
[/code]
Copy linkTweet thisAlerts:
@NogDogJul 29.2005 — I copied that $i variable from your original code, but I'm not seeing anywhere that it's being set, so that would probably explain it. I guess I assumed you were setting it somewhere from a GET or POST value? If that's the plan, then all you need to do is set $i equal to that value (such as [color=blue][b]$i = $_GET['key'];[/b][/color] where 'key' is the name of the incoming GET value (or use $_POST if it's from a post-method form) before you do much of anything else in the script.
Copy linkTweet thisAlerts:
@Mr_Initial_ManauthorJul 29.2005 — How would I set it? Would you suggest GET or POST?
Copy linkTweet thisAlerts:
@chongJul 29.2005 — use get, unless its really sensitive data. its easier to test with get, just concat ur url
Copy linkTweet thisAlerts:
@Mr_Initial_ManauthorJul 29.2005 — Okay, I'll go with that.

Now, let me expand what I'm working with here a bit more.

Head Insert:

[code=html]<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">
<html lang="en" dir="ltr">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<meta http-equiv="content-script-type" content="text/javascript">
<meta name="Content-Style-Type" content="text/css">
<meta name="Author" content="John-David Kraaikamp, Scott Ruhl">
<meta name="Description" content="Coach Random">
<meta name="Keywords" content="Coach, Random, Comic, Furry, Funnies, Dogs, Beer, College, Cavalier, Daily">[/code]



PHP stuff

[code=php]<?php
include("../../inserts/head.htm");
echo("
<link type="text/css" rel="stylesheet" href="../../setup.css">
");

$inserts=array("comic000.htm","comic001.htm" ... (231 inserts) ... "comic233.htm", "comic234.htm");

$max = count($inserts); // get total inserts

$urls =
array(
array('min'=>0, 'max'=>1, 'semester'=>0, 'month'=>NULL),
(Variable URLS)
array('min'=>219, 'max'=>234, 'semester'=>4, 'month'=>3)
);
$found = FALSE;
foreach($urls as $key => $val)
{
if($i >= $urls[$key]['min'] and $i <= $urls[$key]['max'])
{
$found = TRUE;
$chronologylink="../../chronology.php?semester=".$urls[$key]['semester'];
if(!empty($urls[$key]['month']))
{
$chronologylink .= "&month=".$urls[$key]['month'];
}
break;
}
}
if(!$found)
{
$chronologylink = "../../chronology.php";
}
$i = (isset($_GET['page'])) ? $_GET['page'] : 0;
$iprev = ($i == 0) ? "./comic-first.php" : "comics.php?page=" . ($i - 1);
$inext = ($i == $max -1) ? "./comic-last.php" : "comics.php?page=" . ($i +1);
include $inserts [$i]; ?>


<ul id="comiclink">
<li><a href="comic-first.php">First</a></li>
<a href="<?php echo $iprev; ?>">Previous</a></li>
<li><a href="../../index.php">Back to Main</a></li>
<li><a href="<?php echo $chronologylink; ?>">Back to Chronology</a></li>
<a href="<?php echo $inext; ?>">Next</a></li>
<li><a href="comics.php?page=<?php echo $max - 1; ?>">Last</a></li>
</ul>
</body>
</html>
[/code]


[code=html]<title>Biology</title>
</head>
<body id="comicpage">
<h1>Biology</h1>
<h2>July 2001</h2>
<h3>Cavalier Daily Summer 2001 Edition</h3>
<p class="comic"><img src="../../comics/first/biology.gif" alt="Comic"></p>
<p class="number">Comic #2</p>
<p class="date"><strong class="commenter">Drawn:</strong> May 03, 2001</p>
<p class="jdk"><strong class="commenter">JD Kraaikamp:</strong> I remember MANY biology classes being like that.</p>
<p class="scott"><strong class="commenter">Scott Ruhl:</strong>
</p>[/code]


Where would I set the value for [i]"key"[/i] in [i]$i = $_GET["key"];[/i]? As well, how else can I set[I] $i?[/I]
Copy linkTweet thisAlerts:
@Mr_Initial_ManauthorJul 30.2005 — YAHOO!

[code=php]<?php
include("../../inserts/head.htm");
echo("
<link type="text/css" rel="stylesheet" href="../../setup.css">
");

$inserts=array("comic000.htm","comic001.htm", (Tons of URLS betraying huge flatfile database) "comic262.htm", "comic263.htm");

$i = (isset($_GET['page'])) ? $_GET['page'] : 0;

$max = count($inserts); // get total inserts
$urls =
array(
array('min'=>0, 'max'=>1, 'semester'=>0, 'month'=>NULL),
array('min'=>2, 'max'=>4, 'semester'=>1, 'month'=>0),
array('min'=>5, 'max'=>22, 'semester'=>1, 'month'=>1),
array('min'=>23, 'max'=>41, 'semester'=>1, 'month'=>2),
array('min'=>42, 'max'=>58, 'semester'=>1, 'month'=>3),
array('min'=>59, 'max'=>68, 'semester'=>2, 'month'=>0),
array('min'=>69, 'max'=>88, 'semester'=>2, 'month'=>1),
array('min'=>89, 'max'=>96, 'semester'=>2, 'month'=>2),
array('min'=>97, 'max'=>113, 'semester'=>2, 'month'=>3),
array('min'=>114, 'max'=>115, 'semester'=>3, 'month'=>0),
array('min'=>116, 'max'=>135, 'semester'=>3, 'month'=>1),
array('min'=>136, 'max'=>154, 'semester'=>3, 'month'=>2),
array('min'=>155, 'max'=>173, 'semester'=>3, 'month'=>3),
array('min'=>174, 'max'=>176, 'semester'=>3, 'month'=>4),
array('min'=>177, 'max'=>188, 'semester'=>4, 'month'=>0),
array('min'=>189, 'max'=>206, 'semester'=>4, 'month'=>1),
array('min'=>207, 'max'=>218, 'semester'=>4, 'month'=>2),
array('min'=>219, 'max'=>234, 'semester'=>4, 'month'=>3),
array('min'=>235, 'max'=>237, 'semester'=>5, 'month'=>0),
array('min'=>238, 'max'=>258, 'semester'=>5, 'month'=>1),
array('min'=>259, 'max'=>263, 'semester'=>5, 'month'=>1),
);

$found = FALSE;
foreach($urls as $key => $val)
{
if($i >= $urls[$key]['min'] and $i <= $urls[$key]['max'])
{
$found = TRUE;
$chronologylink="../../chronology.php?semester=".$urls[$key]['semester'];
if(!empty($urls[$key]['month']))
{
$chronologylink .= "&month=".$urls[$key]['month'];
}
break;
}
}
if(!$found)
{
$chronologylink = "../../chronology.php";
}

$iprev = ($i == 0) ? "./comic-first.php" : "comics.php?page=" . ($i - 1);
$inext = ($i == $max -1) ? "./comic-last.php" : "comics.php?page=" . ($i +1);
include $inserts [$i]; ?>


<ul id="comiclink">
<li><a href="comic-first.php">First</a></li>
<a href="<?php echo $iprev; ?>">Previous</a></li>
<li><a href="../../index.php">Back to Main</a></li>
<li><a href="<?php echo $chronologylink; ?>">Back to Chronology</a></li>
<a href="<?php echo $inext; ?>">Next</a></li>
<li><a href="comics.php?page=<?php echo $max - 1; ?>">Last</a></li>
</ul>
</body>
</html>[/code]


All I had to do was move [i]$i = (isset($_GET['page'])) ? $_GET['page'] : 0;[/i] from below the URLS array to above it.
×

Success!

Help @Mr_Initial_Man spread the word by sharing this article on Twitter...

Tweet This
Sign in
Forgot password?
Sign in with TwitchSign in with GithubCreate Account
about: ({
version: 0.1.9 BETA 6.17,
whats_new: community page,
up_next: more Davinci•003 tasks,
coming_soon: events calendar,
social: @webDeveloperHQ
});

legal: ({
terms: of use,
privacy: policy
});
changelog: (
version: 0.1.9,
notes: added community page

version: 0.1.8,
notes: added Davinci•003

version: 0.1.7,
notes: upvote answers to bounties

version: 0.1.6,
notes: article editor refresh
)...
recent_tips: (
tipper: @nearjob,
tipped: article
amount: 1000 SATS,

tipper: @meenaratha,
tipped: article
amount: 1000 SATS,

tipper: @meenaratha,
tipped: article
amount: 1000 SATS,
)...