Bij het herbouwen van de website heb ik inmiddels de “gewone” pagina’s klaar en ben met het gecompliceerde begonnen.
Dat is o.a. de top20 stemlijst welke werkt met een gewone php pagina waar een connect.php wordt geincluded en een function.php pagina wordt required.
Ik heb geen ervaring met includen maar zo goed als mogelijk de delen aangepast en houd nu enkele fout meldingen over.
Hieronder de stemlijst.php scripting.
De foutmelding die ik krijg op de functie is in eerste instantie verklaarbaar… Bij het maken van de ‘result’ staat geen $conn vermeld voor contact met de database, echter wanneer ik die wel plaats krijg ik de melding dat conn niet is gedefinieerd zelfs wanneer ik de connect.php in de functie pagina include.
Kan / wil iemand mij op weg helpen of uitleggen wat er fout gaat?
Hieronder functies.php
Dat is o.a. de top20 stemlijst welke werkt met een gewone php pagina waar een connect.php wordt geincluded en een function.php pagina wordt required.
Ik heb geen ervaring met includen maar zo goed als mogelijk de delen aangepast en houd nu enkele fout meldingen over.
Hieronder de stemlijst.php scripting.
PHP:
// start de sessie.
session_start();
// configuratie bestand includen.
include '../connect.php';
require 'functies.php';
// maak verbinding met de MySQL server.
#$verbinding = mysqli_connect($DBhost, $DBuser, $DBpass);
mysqli_select_db($conn, $dbname);
// het aantal seconden in een week.
$secPerWeek = 604800;
// de bezoeker wil stemmen op een nummer in de stemlijst.
if (isset($_GET['stem']))
{
// moet er ingelogd worden voordat de bezoekers
// kunnen stemmen om de stemlijst?
if (stemlijst_var('login') == 'Y')
{
// als de gebruiker niet is ingelogd stuur
// deze dan door naar de login pagina.
if (!is_ingelogd())
{ echo "<meta http-equiv=\"refresh\" content=\"0; URL=../users/login.php?stem=$_GET[stem]\">"; exit(); }
}
}
?>
<html>
<head>
<title>Stemlijst</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<link href="style.css" rel="stylesheet">
<meta http-equiv="imagetoolbar" content="no">
</head>
<body topmargin="5" bgcolor="#DEDEDE">
<font class="headerText">De InternetTop20</font><br>
<font class="normText">Bepaal zelf wie er op nummer 1 komt door jouw stem uit te brengen! Dit kun je elke dag doen!
<a href="../top20.php?lezen=Y">Klik hier</a> voor uitleg over de werking van onze Top20.<br><br>
<?php
if(isset($_GET['stem']))
{
// controleer of het aangegeven nummer wel een
// getal is en of dit nummer wel in de lijst voorkomt.
if (is_numeric($_GET['stem']) && in_lijst($_GET['stem']))
{
$laaste_gestemt = kan_stemmen();
if (kan_stemmen())
{
// plaats de stem.
stem($_GET['stem']);
echo '<div class="stemlijst_gestemt">Jouw stem is toegevoegd!</div>';
}
else
{
// de gebruiker kan op dit moment niet stemmen,
// want dat heeft de gebruiker al gedaan.
echo '<div class="stemlijst_algestemt">Jij hebt vandaag al gestemd, morgen mag je weer!</div>';
}
}
}
// Laatst gestemdeplaat enz. weergeven!
if(isset($_SESSION['user']['userid']))
{
// Tonen laatst gestemde plaat enz.
haallaatstestemplaat_uit_leden();
}
// geef de hele stemlijst weer.
stemlijst_weergeven();
De foutmelding die ik krijg op de functie is in eerste instantie verklaarbaar… Bij het maken van de ‘result’ staat geen $conn vermeld voor contact met de database, echter wanneer ik die wel plaats krijg ik de melding dat conn niet is gedefinieerd zelfs wanneer ik de connect.php in de functie pagina include.
Kan / wil iemand mij op weg helpen of uitleggen wat er fout gaat?
Hieronder functies.php
PHP:
/**
* Haal de waarde van een bepaalde stemlijst optie
* uit de database.
*
* @param string $sleutel - De sleutel voor de variable.
* @param bool $bool - De waardes 'Y' en 'N' omzetten naar boolean waardes.
* @return mixed
*/
function stemlijst_var($sleutel, $bool = false)
{
// voer de sql query uit.
$sql = "SELECT waarde FROM cpl_stemlijst_vars WHERE sleutel = '$sleutel';";
if ($result = mysqli_query($sql))
{
// kon de variable worden gevonden?
if (mysqli_num_rows($result) > 0)
{
$waarde = mysqli_result($result, 0, 'waarde');
// moeten 'Y' en 'N' worden omgezet naar boolean waardes?
if ($bool)
{
if ($waarde == 'Y') $waarde = true;
if ($waarde == 'N') $waarde = false;
}
// de waarde terug geven.
return $waarde;
}
}
// de variable kon niet worden gevonden, wanneer Y en N moeten
// worden omgezet naar boolean waardes zal 'false' worden terug
// gegeven, als dit niet hoeft word er niets (null) terug
// gegeven.
return ($bool) ? false : null;
}