Check alle échte Black Friday-deals Ook zo moe van nepaanbiedingen? Wij laten alleen échte deals zien

Inlog script geeft errors

Pagina: 1
Acties:

  • DeathslayerNLL
  • Registratie: Oktober 2009
  • Laatst online: 21-11 11:13
Hallo!

Ik ben al een tijdje aan het zoeken, maar kan het echt niet vinden, en hoop dat jullie mij kunnen helpen..

Ik heb de volgende code als inlog code gebruikt op mijn (amateur) site:

PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
if (isset ($_POST["opsturen"])){
session_start();
include("database/DB.inc.php");
$a = $_POST["gebruikersnaam"];
$b = $_POST["wachtwoord"];
$resultaat = query("SELECT * FROM members WHERE username='$a';");
$aantal = mysql_num_rows($resultaat);
if ($aantal == '0') { 
echo "Er was geen resultaat gevonden, inlognaam bestaat niet.".'<META HTTP-EQUIV=Refresh CONTENT="3; URL=inloggen.php">'; 
}
else { 
$login = mysql_fetch_object($resultaat);
if($b == $login->pass) { 
session_register("$a");
session_register("$b");  
echo "U bent succesvol ingelogd, een moment.. ".'<META HTTP-EQUIV=Refresh CONTENT="3; URL=index.php">'; 
} else { 
echo "Uw inloggegevens kloppen niet, waarschijnlijk komt het wachtwoord niet overeen.".'<META HTTP-EQUIV=Refresh CONTENT="3; URL=inloggen.php">'; 
}
}
}


De fout die ik elke keer weer te zien krijg, is dit:
Warning: session_destroy() [function.session-destroy]: Trying to destroy uninitialized session in /home/ivltwmbo/domains/capsamonsters.nl/public_html/new3.php on line 3

Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at /home/ivltwmbo/domains/capsamonsters.nl/public_html/new3.php:3) in /home/ivltwmbo/domains/capsamonsters.nl/public_html/new3.php on line 4

Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /home/ivltwmbo/domains/capsamonsters.nl/public_html/new3.php:3) in /home/ivltwmbo/domains/capsamonsters.nl/public_html/new3.php on line 4

De code staat helemaal BOVENAAN de pagina, het begint op regel nummer 1. (Dus de fout kan niet zien dat er iets voor komt, wat ik op verschillende fora las).
Wat ik ook kon vinden, is dat het kan komen door eventuele witte stukken in de code, die heb ik er ook uitgehaald.
Wat ik ook nog vond, is dat het soms komt door hoe wordpad++ hem standaard opslaat (dat in die opslag er toch nog iets voorkomt wat je niet ziet)
Ik heb de code opnieuw in notepad (gewoon die van windows) gezet, en als een nieuw bestand opgeslagen, maar ook dit helpt niet..

Hebben jullie enig idee wat ik fout doe?
Ik hoop het!!

Alvast bedankt voor de hulp, tijd en moeite in ieder geval.

Caspár

[ Voor 0% gewijzigd door MueR op 01-04-2011 16:43 ]


  • Room42
  • Registratie: September 2001
  • Niet online
Tip 1: Zet de code tussen [php]-tags zodat ze leesbaar(der) worden voor ons ;)

Tip 2: De 2e en 3e error ontstaan doordat de 1e error gegenereerd wordt. Als je die oplost, kun je verder. Op die eerste error kun je wel googlen :P

"Technological advancements don't feel fun anymore because of the motivations behind so many of them." Bron


  • Exception
  • Registratie: Augustus 2006
  • Laatst online: 20:08
code:
1
if ($aantal == '0')
Gaat niet werken? 0 is hier een string, en moet een integer zijn. Geen quotes om de 0 dus. (Misschien werkt het wel, maar niet op de goede manier denk ik.


code:
1
echo "U bent succesvol ingelogd, een moment.. ".'<META HTTP-EQUIV=Refresh CONTENT="3; URL=index.php">';

Huh? Sowieso moet deze meta-tag tussen de <head> en </head>. Daarnaast kun je beter header('location: script.php'); gebruiken.


code:
1
session_start();
Even boven je if-statement zetten? Anders is er geen sessie.


Voortaan de boel even netjes uitlijnen en tussen [code]-tags zetten. Zo is het natuurlijk amper te lezen.

[ Voor 6% gewijzigd door Exception op 01-04-2011 16:45 ]


  • MueR
  • Registratie: Januari 2004
  • Laatst online: 14:48

MueR

Admin Devschuur® & Discord

is niet lief

Warning: session_destroy() [function.session-destroy]: Trying to destroy uninitialized session in /home/ivltwmbo/domains/capsamonsters.nl/public_html/new3.php on line 3
Dus. Je fout zit in dat script, op regel 3. Wat staat daar? Zie ook Devschuur® Beleid - Help, mijn script werkt niet (goed)

Je andere foutmelding is nauwelijks iets over te vinden op google, of hier op GoT.

[ Voor 18% gewijzigd door MueR op 01-04-2011 16:45 ]

Anyone who gets in between me and my morning coffee should be insecure.


  • DeathslayerNLL
  • Registratie: Oktober 2009
  • Laatst online: 21-11 11:13
Hallo,

First of all, sorry voor de slechte php code die ik gaf inderdaad (de onleesbaarheid bedoel ik daarmee), ik wist op het moment niet hoe dat moest, ik zal er de volgende keer op letten.

Second, het werkt nu inderdaad met de feedback die is gegeven!

Bedankt, nogmaals, voor de hulp en tijd!
(Er kan dan een slot op?:))

  • MueR
  • Registratie: Januari 2004
  • Laatst online: 14:48

MueR

Admin Devschuur® & Discord

is niet lief

We sluiten geen topics omdat ze opgelost zijn: Het algemeen beleid #topiceinde

Lees, voor je volgende topic, even Het algemeen beleid #quickstart nog even door

Anyone who gets in between me and my morning coffee should be insecure.


  • Acid_Burn
  • Registratie: Augustus 2001
  • Laatst online: 16:11

Acid_Burn

uhuh

Denk je ook even aan SQL injection? Zoals je het nu doet is het niet veilig.

Glass Eye Photography | Zelfbouw wireless fightstick | Mijn puzzel site


  • ReenL
  • Registratie: Augustus 2010
  • Laatst online: 14-09-2022
Kijk eens naar het grote uitroepteken op deze pagina:
http://nl3.php.net/session_register

Tip v/d dag is inspringen, misschien kun je het zelf op deze manier prima lezen, maar voor iemand die je code nog nooit gezien heeft is dit echt drama.

Verder niet te makkelijk denken over SQL-Injection zoals eerder gezegt is.

Tijdens een inlogpoging kan een eventuele hacker zien dat een account wel of niet bestaat, dit is soms niet wat je wilt. Let ook op dat een eventuele hacker zou mogen brute forcen.
Pagina: 1