Probleem met stukje code

Status
Niet open voor verdere reacties.

Korkel

Gebruiker
Lid geworden
29 jan 2014
Berichten
53
Hallo,

Ik heb van internet een script gehaald, welke gewoon werkt, ik zit echter met het volgende probleem:
PHP:
<title>Scalda Studenten Onderzoek | Uitslag</title>

<?php 
echo '<script language="javascript">';
echo 'alert("Om toegang te krijgen tot de uitslagen van het onderzoek heb je een gebruikersnaam en wachtwoord nodig.\nDeze gegevens zijn alleen beschikbaar bij personen die hiertoe bevoegd zijn.")';
echo '</script>';
// Define your username and password 
$username = "test"; 
$password = "test"; 

if ($_POST['txtUsername'] != $username || $_POST['txtPassword'] != $password) {

?> 

<h1>Scalda Studentenonderzoek Uitslag - Inloggen</h1> 

<form name="form" method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>"> 
    <p><label for="txtUsername">Gebruikersnaam:</label> 
    <br /><input type="text" title="Voer de gebruikersnaam in" name="txtUsername" /></p> 

    <p><label for="txtpassword">Wachtwoord:</label> 
    <br /><input type="password" title="Voer het wachtwoord in" name="txtPassword" /></p> 

    <p><input type="submit" name="Submit" value="Login" /></p> 

</form> 

<?php 

} 
else {

?> 

<?php
session_start();
include_once 'config.php';
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
<title>Scalda Studenten Onderzoek</title>
</head>

<body style="font-family:Verdana, Arial, Helvetica, sans-serif; font-size:12px;">

<table border="0" cellpadding="3" cellspacing="0">


<?php

//vragen laden

for($i = 1; $i <= 10; $i++)
{
    $kleur[$i] = $i %2 == 0 ? '#999999' : '#d8d8d8';
}

$result = mysql_query("SELECT antwoorden FROM antwoorden") or die(mysql_error());

while($data = mysql_fetch_array($result))
{
    $antwoord = explode('|',$data['antwoorden']);
    
    foreach($antwoord as $key => $waarde)
    {
        $vraag['vraag'][ $key ][ $waarde ]++;
    }
}

$nr = 1;

$result = mysql_query("SELECT id,vraag,antwoorden FROM vragen");

while($data = mysql_fetch_array($result))
{
    echo '<tr bgcolor="#666666" style="color:#ffffff"><td colspan="1">'.$data['vraag'].'</td><td>Uitslag:</td></tr>';
    
    $antwoorden = explode('|',$data['antwoorden']);
    
    foreach($antwoorden as $key => $waarde)
    {
        $aantal_mensen = mysql_num_rows(mysql_query("SELECT id FROM antwoorden"));        
        
        //voorkom de melding division by zero
        if($aantal_mensen == 0)
            $aantal_mensen = 1;
            
        echo '<tr bgcolor="'.$kleur[$nr].'"><td>'. $waarde.'</td>
        <td> ' . round(($vraag[ 'vraag' ][ $data['id'] -     1 ][ $nr ] / $aantal_mensen)*100,1).'%</td></tr>';
        $nr++;
    }
    $nr=1;
    echo '<tr><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>';
}
    
?>

</body>
</html>

<?php 

} 

?>
Dat is de huidige code, ik wil echter dat de alertbox, slechts één keer wordt weergeven met een OK/annuleren knop, de annuleren knop moet naar een andere pagina gaan, is dat mogelijk?
 
Dit is geen PHP maar een Javascript vraag.

Ik denk dat je dit zoekt.

En dan zou ik ipv bovenaan je script de javascript <script> tags na de if gebruiken, ingelogde gebruikers hoeven je alert immers niet te lezen.


Let ook op onderstaande punten
  • Passwords wil je niet ongecodeerd opslaan
  • Inlog data is alleen veilig te verzenden over een https verbinding
  • mysql_query is achterhaald. Google eens op PDO
 
Sorry, het is de eerste keer dat ik zo iets doe.
Hoe bedoel je het stukje betreft de <script> tags precies? Die link die je gaf ga ik bekijken, bedankt!

Het zal slechts één gebruikersnaam en wachtwoord zijn.
Die andere 2, ga ik eens naar kijken.

Bedankt!
 
Laatst bewerkt:
PHP:
if(session_id() == '') {
echo '<script language="javascript">';
echo 'alert("Om toegang te krijgen tot de uitslagen van het onderzoek heb je een gebruikersnaam en wachtwoord nodig.\nDeze gegevens zijn alleen beschikbaar bij personen die hiertoe bevoegd zijn.")';
echo '</script>';
}
//vervangen vanaf line 4
 
Laatst bewerkt door een moderator:
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan