login  Naam:   Wachtwoord: 
Registreer je!
 Forum

Cms met arrays en mysql

Offline SilverR - 27/05/2006 17:13
Avatar van SilverRNieuw lid
  1. <?php
  2. $valid = array('1','2','3','4','5','6','7','8'); // Pagina's die geïnclude mogen worden
  3.  
  4. if (in_array($_GET['page'], $valid)) {include('cms/article1.php?id=' . $_GET['page']); } // Controle of de opgrvraagde pagina wel een juiste is, zoja: includen
  5. else { include("cms/article1.php?id=1"); } ?>


Nou wil ik van die array iets maken zodat hij zeg maar die id's ophaalt uit de database, anders moet ik steeds als ik weer een nieuwe pagina maak dat nummer bij die arrays zetten zodat dit paginascript het weer doet maar als hij dat nou ophaalt uit die database met als
databasenaam: news
tables: id titel en content
Dus moet hij dat id vinden in de database en de id's die in die table staan mogen worden geinclude

11 antwoorden

Gesponsorde links
Offline Thomas - 27/05/2006 18:04
Avatar van Thomas Moderator Dan haal je toch de id's op met een query, en deze steek je in een array? Of je probeert meteen het bewuste artikel op te halen, en als die query geen resultaten oplevert, haal je een default boodschap op (die hopelijk wel bestaat).
Offline SilverR - 27/05/2006 18:21 (laatste wijziging 27/05/2006 18:22)
Avatar van SilverR Nieuw lid
  1. <?php
  2. include 'config.php';
  3. include 'opendb.php';
  4.  
  5. $query = "SELECT id FROM news ORDER BY id";
  6. $valid = array($query);
  7. $result = mysql_query($query) or die('Error : ' . mysql_error());
  8.  
  9. if (in_array($_GET['page'], $valid)) {include('article1.php?id=' . $_GET['page']); }
  10. else { include("article1.php?id=1"); }
  11.  
  12. ?>


Deze doet het niet;-) ach jah.. ben lkkr noobish bezig matoch..
Offline Simon - 27/05/2006 18:26
Avatar van Simon PHP expert
  1. <?php
  2. $query = mysql_query("SELECT id FROM news ORDER BY id") or die('Error : ' . mysql_error());
  3. $array = array();
  4. while($res = mysql_fetch_assoc($query)) {
  5. $array[] = $res['page'];
  6. }
  7. echo var_dump($array); // om alle pagina's te zien, ter controle
  8. ?>
Offline SilverR - 27/05/2006 19:13 (laatste wijziging 27/05/2006 19:23)
Avatar van SilverR Nieuw lid
  1. <?php
  2.  
  3. $query = mysql_query("SELECT id FROM news ORDER BY id") or die('Error : ' . mysql_error());
  4. $array = array();
  5. while($res = mysql_fetch_assoc($query)) {
  6. $array[] = $res['page'];
  7. }
  8. if (array($_GET['page'], $array)) {include('cms/article1.php?id=' . $_GET['page']); }
  9.  
  10.  
  11. ?>


Keb dit nu. Het werkt wel, alle links die ik nu aanmaak kan ik ook direct gebruiken ;) Kvraag me alleen af of de controle functie zo werkt...:$
Offline Simon - 27/05/2006 19:34
Avatar van Simon PHP expert is het niet: if(in_array(...
Offline SilverR - 27/05/2006 19:53
Avatar van SilverR Nieuw lid
  1. if(in_array(wat moet hier nou precies nagekeken worden)) {include('cms/article1.php?id=' . $_GET['page']);}
  2. else include 'de homepagina of 404 fout';
  3.  
  4. ?>


Hmm,, hij werkt dan niet maar ik kan ook zien dat hij hem niet controleerd bij die andere, dus jij had zeg ma de $query etc goed opgehaald want door die controle kon ik zien welke erin zaten. Alleen nu moet ik hem dus ook daadwerkelijk includen door die if tag. Alleen hoe,, alleen dat laatste stukje klopt niet.

Bedankt ben al heel stuk verder met alles!!! 
Offline Simon - 27/05/2006 20:04
Avatar van Simon PHP expert
  1. <?php
  2. $query = mysql_query("SELECT id FROM news ORDER BY id") or die('Error : ' . mysql_error());
  3. $array = array();
  4. while($res = mysql_fetch_assoc($query)) {
  5. $array[] = $res['page'];
  6. }
  7. if (in_array($_GET['page'], $array)) {
  8. include('cms/article1.php?id=' . $_GET['page']);
  9. }
  10. else {
  11. include('error/error404.php');
  12. //pagina bestaat niet
  13. }
  14. ?>


zou moeten werken 
Offline Ibrahim - 27/05/2006 20:08
Avatar van Ibrahim PHP expert in je query haal je id op en in je while staat page??

zal dus niet werken simon
Offline SilverR - 27/05/2006 20:17 (laatste wijziging 27/05/2006 20:26)
Avatar van SilverR Nieuw lid
  1. <?php
  2. include 'up.inc.php'; // Het bovenste gedeelte van je HTML
  3. include 'configvandatabaseconnect.php';
  4.  
  5. $query = mysql_query("SELECT id FROM news") or die('Error : ' . mysql_error());
  6. $array = array();
  7. while($res = mysql_fetch_assoc($query)) {
  8. $array[] = $res['page'];
  9. }
  10. if (in_array($_GET['page'], $array)) {
  11. include('http://www.silverlight.nl/divlayout/cms/article1.php?id=' . $_GET['page']);
  12. }
  13. else {
  14. include('http://www.silverlight.nl/divlayout/cms/article1.php?id=1');
  15. //pagina bestaat niet dus naar homepagina
  16. }
  17.  
  18.  
  19. include("footer.inc.php"); // Het onderste gedeelte van je HTML
  20. ?>


Dit heb ik,, keb het maar voluit geschreven,, bij mij blijft de site nu maar laden totdat er een 500 Internal Server Error tevoorschijn komt. de site waar het nu op wordt toegepast is deze:

Div Layout Silverlight

@ Sillicom,, hij klopt wel,, op de site haal ik ze aan met page alleen de article1.php waar alles wegkomt wordt aangehaald met id.
Offline Simon - 27/05/2006 20:34
Avatar van Simon PHP expert siliecom heeft gelijk:

$query = mysql_query("SELECT id,page FROM news") or die('Error : ' . mysql_error());

of

$array[] = $res['page']; --> $array[] = $res['id'];
Offline SilverR - 27/05/2006 20:40 (laatste wijziging 27/05/2006 20:40)
Avatar van SilverR Nieuw lid En ja hij doet het het het!!!! De oplossing was de tweede:

$array[] = $res['id'];

daarom bleef hij loaden en nu doet alles het. bedankt!:D :D
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.292s