Hey mensen,

Ik maak een simpele site, met een forum. In dat forum staat de link: forum.php?actie=nieuwpost. Die doet het gewoon.. nouw wil ik weten hoe je dat in 1 pagina kan verwerken. Zoiets:
<?php
switch (strtolower($_GET['pagina']))
{
case "forum.php?actie=nieuwpost":
include("./forum/forum.php?actie=nieuwpostphp");
break;
}
?>
Wat moet ik dan in de link zetten?? Wie kan mij helpen?????
forum.php?actie=nieuwpost
Je geeft variables aan een url mee door ze erachter te zetten, de eerste na een vraagteken, vervolgens gescheiden door &-tekens.

In dit geval wordt het dus:
forum.php?actie=nieuwpost

<?php
switch (strtolower($_GET['actie']))
{
case "forum.php?actie=nieuwpost":
include("nieuwpost.php");
break;
}
?>

Je kunt geen parameters doorgeven aan een script dat je include, aangezien de code niet wordt uitgevoerd en het resultaat wordt ingeladen, maar de het bestand wordt ingeladen, en daarnaa met de rest van de code uitgevoerd.
Jelmer schreef op 12.06.2005 20:43
<?php
switch (strtolower($_GET['actie']))
{
case "forum.php?actie=nieuwpost":
include("nieuwpost.php");
break;
}
?>


Moet dat niet:
<?php
switch (strtolower($_GET['actie']))
{
case "nieuwpost":
include("nieuwpost.php");
break;
}
?>
zijn?
Eum, ja.

(Ik moet echt nodig mijn delete-toets weer eens terugvinden)
Jelmer schreef op 12.06.2005 22:12
Eum, ja.

(Ik moet echt nodig mijn delete-toets weer eens terugvinden)

Misschien heb ik nog zo'n toets liggen:-)
Volgnes mij snappen jullie me nie helemaal, ik ben ook erg vaag.
Ik heb een link met 2X een ? erin. dit:
<a href=index.php?pagina=forum.php?actie=nieuwpost
Die doet het niet, hoe kank zorgen dattie het wel doet? Met & ofso(sagk bij een andere site). Wie kan mij helepn??
Ik heb trouwens ook nog wel een toets orr!! als je me helpt mag je hem hebben:P
ik heb nu dit in de link:
<a href=\"index.php?pagina=profile.php?act=edit_profile\">Change Profile</a>

En dit in de index.php:
<?php
switch (strtolower($_GET['pagina']))
{
case "profile.php?act=edit_profile":
include("profile.php&?act=edit_profile");
break;
default:
include("hoofd.php");
break;
}
?>

Dan geeft hij deze foutmelding:

Warning: main(profile.php&?act=edit_profile): failed to open stream: No such file or directory in /het adres/index.php on line 89

Warning: main(): Failed opening 'profile.php&?act=edit_profile' for inclusion (include_path='.:') in /het adres/index.php on line 89
Wat moet ik anders doen??
<a href=\"index.php?pagina=profile.php&act=edit_profile\">Change Profile</a>

case "profile.php":
include("profile.php?".$_GET['act']);

Alleen, volgens mij kan je geen parameters meegeven met een include().
Nee, dat kan niet omdat include een bestand inlaad, niet het resultaat van het geparste bestand.

Maar als het goed is zou hij:
include("profile.php");
zo dus wel moeten werken, aangezien de parameter $act dan wel degelijk aankomt. Het script wordt immers ingelezen, en dan geparsed in de pagina waarin je hem hebt geïnclude, dus daar waar je $act-parameter zich ook al bevindt.
het lukt bij mij ook niet. Ik denk dat ik ehtzelfde probleem heb. Dit is mij code van de pagina(khad niet echt zin om de juiste regel eruit te vissen):

<?php
include ('config.php');

$cat = $_GET['cat'];
$pagina = (isset($_GET['pagina']) ? $_GET['pagina'] : 0);
?>
<HTML>
<HEAD>
<TITLE><?php echo $forumname; ?></TITLE>
<LINK HREF="style.css" TYPE="text/css" REL="stylesheet">
</HEAD>

<BODY>
<?php
$query = mysql_query("SELECT naam FROM categories WHERE id=$cat") or die(mysql_error());

// category check
if(!mysql_num_rows($query)) {
echo "<CENTER>De geselecteerde categorie bestaat niet (meer).<BR>\n";
echo "<A HREF=\"categorieen.php\">Terug naar Categorieën</A><BR></CENTER>\n";
} else {
echo "<A HREF=\"categorieen.php\">".$forumname."</A> &gt; <B>".mysql_result($query, 0, "naam")."</B><BR>\n";
mysql_free_result($query);
?>
<BR>
<TABLE WIDTH="500" BORDER="1" CELLSPACING="0" CELLPADDING="2">
<?php
$query1 = mysql_query("SELECT COUNT(*) FROM forum WHERE cat=$cat") or die(mysql_error());
$aantal_berichten = mysql_result($query1, 0);
mysql_free_result($query1);

$start = $pagina * $max;
$query2 = mysql_query("SELECT * FROM forum where cat=$cat ORDER BY id DESC LIMIT $start, $max") or die(mysql_error());

if(mysql_num_rows($query2)) {
$i = 0;
?>
<TR>
<TD WIDTH="25">
<BR>
</TD>

<TD WIDTH="200">
<B>Titel</B><BR>
</TD>

<TD WIDTH="100" ALIGN="center">
<B>Gepost door</B><BR>
</TD>

<TD WIDTH="100" ALIGN="center">
<B>Gepost op<B><BR>
</TD>

<TD WIDTH="75" ALIGN="center">
<B>Reacties</B><BR>
</TD>
</TR>
<?php
while($row = mysql_fetch_row($query2)) {
$forumid = $row[0];
$query3 = mysql_query("SELECT COUNT(*) FROM forumreplys WHERE forumid=$forumid") or die("q3: ".mysql_error());
$replys = mysql_result($query3, 0);
if($replys == 0) {
$thread = $gif1;
} elseif($replys > 0 && $replys < $mapbrand) {
$thread = $gif2;
} elseif($replys >= $mapbrand) {
$thread = $gif3;
}

// per rij zal het van kleur verwisselen
$kleur = ($i % 2 ? $kleur1 : $kleur2); //aanpassen in config
echo "<TR BGCOLOR=\"".$kleur."\">";
echo "<TD WIDTH=\"25\" ALIGN=\"center\"><IMG SRC=\"".$thread."\" WIDTH=\"13\" HEIGHT=\"16\" ALT=\"";
echo $row[7]." hit".($row[7] == 1 ? "" : "s")."\"><BR></TD>";
echo "<TD WIDTH=\"200\"><A HREF=\"forumbericht.php?cat=".$cat."&forumid=$forumid\">".$row[1]."</A><BR></TD>";
echo "<TD WIDTH=\"100\" ALIGN=\"center\"><A HREF=\"mailto:".$row[5]."\">".$row[3]."</A></TD>";
echo "<TD WIDTH=\"100\" ALIGN=\"center\">".date("d/m/Y H:i", $row[4])."</TD>";
echo "<TD WIDTH=\"75\" ALIGN=\"center\">".$replys."</TD></TR>";
$i++;
} // end while
mysql_free_result($query2);
?>

<?php
// navigatie
if($aantal_berichten > $max) {
// laat alleen navigatie zien als er meer berichten zijn dan dat er op een pagina passen
// aantal pagina's:
if(!($aantal_berichten % $max)) {
// pagina's passen precies
$npaginas = $aantal_berichten/$max;
} else {
// rest na deling
$npaginas = (integer)($aantal_berichten/$max) + 1;
}
echo "<TR><TD WIDTH=\"500\" COLSPAN=\"5\" ALIGN=\"center\">\n";
echo "Pagina's ";
for($p=0; $p < $npaginas; $p++) {
if($p == $pagina) {
echo "<B>$p</B>";
} else {
echo "<A HREF=\"forum.php?pagina=".$p."&cat=".$cat."\">".$p."</A>";
}
echo (($p+1) < $npaginas ? "|" : "");
}
echo "</TD></TR>\n";
}
} elseif(!$pagina) {
// nog geen forumids in deze categorie OF
// een persoon zit op een niet-bestaande pagina
?>
<TR>
<TD WIDTH="500" COLSPAN="5" ALIGN="center">
<B>Er zijn nog geen forumberichten toegevoegd in deze categorie!</B>
</TD>
</TR>
<?php
} else {
?>
<TR>
<TD WIDTH="500" COLSPAN="5" ALIGN="center">
<B>Er staan geen berichten op deze pagina!</B>
</TD>
</TR>
<?php
}
?>
<TR>
<TD COLSPAN="5" ALIGN="center">
<A HREF="nieuwbericht.php?cat=<?php echo $cat; ?>">Nieuw Topic</A> |
<A HREF="categorieen.php">Terug naar '<?php echo $forumname; ?>'</A><BR>
</TD>
</TR>
</TABLE>
<?php
} // end category exists check
?>
</BODY>
</HTML>


Zoals je ziet kan je linken naar
forumbericht.php?cat=".$cat."&forumid=$forumid Maar as ik doe forumbericht.php&cat=".$cat."&forumid=$forumid doettie het niet. Hoe kan ik zorgen dat die pagina"forumbericht.php?cat=".$cat."&forumid=$forumid" Zich opent in mij index.php?? Iemand?

Reageren