Rare lijnen en strepen bij de uitvoer van php bestand

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Jeroen Brouns

Jeroen Brouns

18/12/2010 17:18:44
Quote Anchor link
Hoi allemaal,

Ik ben bezig met een project waarbij bij het uitvoeren van het php bestand (zowel in FF in in IE8) op dezelfde plek steeds rare lijnen verschijnen.

screenshot:
Afbeelding
link:
http://www.quicksell.be/index.php
(als je inlogt met een willekeurige username en password krijg je de error (die wel klopt, maar met de rare lijnen en strepen in beeld.)

hieronder de code van de betreffende div-tag:
Quote:
<div class="middle_middle"><span class="right_middle">
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
<?php if(isset($_POST['Submit'])) {
if($_POST['poging'] == $cfg['poging']+1) { // Reeds 3 pogingen achter de rug?
    header("Location: wachtwoord.php");
}

    $checkg = mysql_result(mysql_query("SELECT COUNT(*) FROM leden WHERE gebruikersnaam='".$_POST['gebruikersnaam']."'"),0);
    $checkp = mysql_result(mysql_query("SELECT COUNT(*) FROM leden WHERE gebruikersnaam='".$_POST['gebruikersnaam']."' AND wachtwoord='".md5($_POST['wachtwoord'])."'"),0);
        if($_POST['gebruikersnaam'] == "" || $_POST['wachtwoord'] == "") {
            $error[] = 'Vul alle velden in!';
        }

        if($checkg == 0 && $_POST['gebruikersnaam'] != "") {
            $error[] = 'De ingevoerde gebruikersnaam is niet geregistreerd.';
        }

        if($_POST['wachtwoord'] != "" && $_POST['gebruikersnaam'] != "" && $checkp == 0) {
            $error[] = 'Het ingevoerde wachtwoord is niet correct.';
        }

        $fouten = sizeof($error); // aantal errors tellen
        if($fouten != 0) { // Er is minstens 1 error
            echo 'Kan niet inloggen omwille van de volgende reden(en):';
            echo '<ul>';
                for($i = 0; $i < $fouten; $i++) {
                    echo '<li>'.$error[$i].'</li>';
                }

            echo '</ul>';
            echo 'Poging '.$_POST['poging'].' van '.$cfg['poging'];
        }
else {
            session_start();
            $res = mysql_query("SELECT * FROM leden WHERE gebruikersnaam='".$_POST['gebruikersnaam']."'");
            $row = mysql_fetch_assoc($res);
            setcookie("gebruikersnaam",$row['gebruikersnaam'],time()+3600,"/");
            setcookie("wachtwoord",$row['wachtwoord'],time()+3600,"/");
            $_SESSION['gebruiker'] = $row['gebruikersnaam'];
            $_SESSION['gid']        = $row['id'];
            header("Location:  ingelogged.php");
        }
 }
?>

</span></div>


Toevoeging op 18/12/2010 17:21:32:

laat maar het is al opgelost. de class was verkeerd
 
PHP hulp

PHP hulp

23/11/2024 11:38:19
 
Justin S

Justin S

18/12/2010 17:22:22
Quote Anchor link
Dit is een style probleem, geen PHP probleem. Post je relevante CSS code eens.
 

18/12/2010 17:29:48
Quote Anchor link
- Gebruik alsjeblieft [code] en [/code] tags als je hier code op het forum plaatst.
- Gebruik if($_SERVER['REQUEST_METHOD'] == 'POST') om te controleren of een post is gedaan. De sumbit waarde wordt niet altijd meegestuurd.
- Je houd bij hoeveel pogingen iemand gedaan heeft d.m.v. een variabale die terug te vinden is in het formulier? Dat is niet slim... Kan door de gebruiker worden aangepast.
- Zie header. Een header kan niet midden op een pagina voorkomen.
- Foutafhandeling van mysql ontbreekt.
- SQL injections mogelijk. Zie mysql_real_escape_string.
- De tweede query (waarvan het resultaat in $checkp komt) is voldoende.
- Gebruik een salt password.
- Het is handiger om eerst te checken of een waarde wel is ingevuld.
- Meld niet of een gebruikersnaam verkeerd is of een wachtwoord. Meld gewoon dat er iets verkeerd is. Te specifieke meldingen kunnen misbruikt worden.
- sizeof kan je gebruiken. Ik zou emptyp i.c.m. foreach gebruiken.
- Met sizeof weet je hoeveel fouten er zijn (al ga je dat nu weer wegwerken), dan weet je ook of je meerdere redenen hebt.
- session_start moet bovenaan.
- Selecteer wat je wilt hebben gebruik niet *.
- In principe hoef je geen query uit te voeren om te kijken wat de gebruikersnaam is van iemand...
- Sla nooit een wachtwoord op in een cookie.

Jeroen Brouns op 18/12/2010 17:18:44:
Toevoeging op 18/12/2010 17:21:32:

laat maar het is al opgelost. de class was verkeerd

Bekijk ook even bovenstaande punten.
Gewijzigd op 18/12/2010 17:30:39 door
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.