Toon posts:

Couldn't select database

Pagina: 1
Acties:
  • 47 views sinds 30-01-2008

Verwijderd

Topicstarter
Iedere keer krijg ik de melding "couldn't select the database, heb ik alle instellingen goed staan volgens jullie of moet ik nog iets veranderen, of ligt t aan lycos mischien?, de database heb k correct aangemaakt.


<html>
<head>
<title>Login</title>
</head>
<body>
<form method="POST" action="login2.php">
Username: <input type="text" name="username" size="20">
Password: <input type="password" name="password" size="20">
<input type="submit" value="Submit" name="login>
INSERT INTO users (username, password) VALUES (‘someUser’, md5(‘somePass’));
</form>
</body>
</html>


En hier Login2.php

<?PHP
if (!isset($username) || !isset($password)) {
header( "Location: http://www.yourdomain/login.htm" );
}
elseif (empty($username) || empty($password)) {
header( "Location: http://www.yourdomain/login.htm" );
}
else{
$user = addslashes($_POST['username']);
$pass = md5($_POST['password']);
$dbHost = "localhost";
$dbUser = "riseandshine32";
$dbDatabase = "riseandshine32_nl_db";
$db = mysql_connect ("localhost", "riseandshine32", "")or die ("Error connecting to database.");
mysql_select_db("$riseandshine32_nl_db", $db) or die ("Couldn't select the database.");
$result=mysql_query("select * from users where username='$user' AND password='$pass'", $db);
$rowCheck = mysql_num_rows($result);
if($rowCheck > 0){
while($row = mysql_fetch_array($result)){
session_start();
session_register('username');
echo 'Success!';
header( "Location: checkLogin2.php" );
}
}
else {
echo 'Incorrect login name or password. Please try again.';
}
}
?>

  • Zwelgje
  • Registratie: November 2000
  • Laatst online: 17-08 09:02
website draait bij lycos? en de database staat als 'localhost' ? of heb je bij de club een eigen mysql server draaien??

dan zou je localhost dus moeten vervangen door je servernaam (dns naam)

A wise man's life is based around fuck you


Verwijderd

Lekker slim om je wachtwoord van je databeest hier neer te zetten :P

Verwijderd

Topicstarter
de website draait inderdaad bij lycos, ik heb zelf geen mysql server draaien, ik gebruik gewoon de sienst van lycos, hoe zou zo'n servernaam bij lycos er dan uit kunnen zien bv?
mischien een stomme vraag, maar k begin er net mee, en als niemand helpt kom je er zelf niet uit.

  • reskobon
  • Registratie: November 2001
  • Laatst online: 14-08 22:26
mysql_select_db("$riseandshine32_nl_db", $db);

Die klopt niet!!

dat moet zijn:
mysql_select_db($dbDatabase);

Je haalt namelijk de variabele en de naam door elkaar. :)

Leeg


  • Zwelgje
  • Registratie: November 2000
  • Laatst online: 17-08 09:02
Verwijderd schreef op 15 May 2003 @ 22:41:
de website draait inderdaad bij lycos, ik heb zelf geen mysql server draaien, ik gebruik gewoon de sienst van lycos, hoe zou zo'n servernaam bij lycos er dan uit kunnen zien bv?
mischien een stomme vraag, maar k begin er net mee, en als niemand helpt kom je er zelf niet uit.
volgens mij heb je bij lycos niet de beschikking over een mysql databeest... die zou je dus zelf moeten gaan draaien thuis (of op een andere host)

A wise man's life is based around fuck you


Verwijderd

zwelgje schreef op 15 mei 2003 @ 22:42:
[...]


volgens mij heb je bij lycos niet de beschikking over een mysql databeest... die zou je dus zelf moeten gaan draaien thuis (of op een andere host)
wel. Maar hij ondersteund heel weinig.

Zie http://www.tripod.lycos.nl/myaccount/freehosting/, helemaal onderaan bij 'Help'

[ Voor 13% gewijzigd door Verwijderd op 15-05-2003 22:46 ]


Verwijderd

Topicstarter
ok, als t dus mysql_select_db($dbDatabase) moet zijn, moet k toch het woord Database toch vervangen worden door $riseandshine32_nl_db , of ben ik nou gek?
En mijn wachtwoord van de database staat hier toch niet in "Lookslike"?

  • Zwelgje
  • Registratie: November 2000
  • Laatst online: 17-08 09:02
Verwijderd schreef op 15 May 2003 @ 22:43:
[...]

wel. Maar hij ondersteund heel weinig.
la maar ik zie het al...

[ Voor 35% gewijzigd door Zwelgje op 15-05-2003 22:47 ]

A wise man's life is based around fuck you


Verwijderd

Verwijderd schreef op 15 May 2003 @ 22:45:
ok, als t dus mysql_select_db($dbDatabase) moet zijn, moet k toch het woord Database toch vervangen worden door $riseandshine32_nl_db , of ben ik nou gek?
En mijn wachtwoord van de database staat hier toch niet in "Lookslike"?
ow nee, sorry, ik keek verkeerd :P
zwelgje schreef op 15 mei 2003 @ 22:46:
[...]


ja hoho, hij ondersteund het gebruik van mysql (middels wat library's of dll's) niet een hele database

of heb je een linkje naar de site van lycos? waar dit staat?
Ik heb er weleens een heel forum gehost hoor :)

[ Voor 33% gewijzigd door Verwijderd op 15-05-2003 22:47 ]


Verwijderd

Topicstarter
Dus wat kan k nu t beste doen, k ben er al dagen mee bezig, maar kom er niet uit, wat moet k nu veranderen in het script?

Verwijderd

Verwijderd schreef op 15 mei 2003 @ 22:48:
Dus wat kan k nu t beste doen, k ben er al dagen mee bezig, maar kom er niet uit, wat moet k nu veranderen in het script?
Probeer even @ localhost dan weet je iig of het aan het script ligt of aan Lycos :) (tevens handig om scripts te testen) Zie http://www.webmeesteres.n...umentatie/lees.php&id=194 :)

[ Voor 17% gewijzigd door Verwijderd op 15-05-2003 22:52 ]


  • reskobon
  • Registratie: November 2001
  • Laatst online: 14-08 22:26
Verwijderd schreef op 15 May 2003 @ 22:45:
ok, als t dus mysql_select_db($dbDatabase) moet zijn, moet k toch het woord Database toch vervangen worden door $riseandshine32_nl_db , of ben ik nou gek?
En mijn wachtwoord van de database staat hier toch niet in "Lookslike"?
Nee ik heb het idee dat je nog niet echt lang php't ;)

$database is een variabele die je als inhoud hebt gegeven: riseandshine32_nl_db
Oftewel $database is een string, en jij maakt ervan $riseandshine32_nl_db maar dat is dus een nieuwe variabele die nog geen inhoud heeft.

Probeer het maar zal je zien dat het werkt :)

Leeg


  • Theguide
  • Registratie: December 2000
  • Laatst online: 26-06-2025
Paar dingetjes... ik dacht (maar weet niet zeker) dat session_start(); helemaal bovenaan de pagina moest staan om het correct te laten werken.
Wat ook verstandiger is, is om je username en wachtwoord verificatie niet in 1 select statement te doen, aangezien je dan met manipuleren van de invoervelden onverwachte resultaten kunt bewerkstelligen in je sql statement, wat een hacker een gaatje geeft om binnen te komen. Beter is bijvoorbeeld om eerst de username met een id te matchen en dan kijken of het ingegeven wachtwoord matcht met datzelfde id. Dus oplossen in twee select statements.

Fuck me if I'm wrong, but isn't your name Gretchen?


  • reskobon
  • Registratie: November 2001
  • Laatst online: 14-08 22:26
Theguide schreef op 15 mei 2003 @ 22:50:
Paar dingetjes... ik dacht (maar weet niet zeker) dat session_start(); helemaal bovenaan de pagina moest staan om het correct te laten werken.
Wat ook verstandiger is, is om je username en wachtwoord verificatie niet in 1 select statement te doen, aangezien je dan met manipuleren van de invoervelden onverwachte resultaten kunt bewerkstelligen in je sql statement, wat een hacker een gaatje geeft om binnen te komen. Beter is bijvoorbeeld om eerst de username met een id te matchen en dan kijken of het ingegeven wachtwoord matcht met datzelfde id. Dus oplossen in twee select statements.
Beide argumenten kloppen ja maar heeft even niks met zijn fout te maken. Natuurlijk plaats je session_start() aan het begin. Over die query's kan je twisten, het kost je namelijk ook een query maar op localhost zal dat wel meevallen :)

Leeg


  • Theguide
  • Registratie: December 2000
  • Laatst online: 26-06-2025
De oplossing van zijn fout werd al gegeven een paar posts boven mijn antwoord, dus ik dacht ik help 'm gelijk met fouten die komen gaan :)
Wat betreft die extra query... ik denk niet dat je het zal merken. 1 miliseconde tijdsverlies ten opzichte van een stuk betere security... ik denk dat de keuze makkelijk is :)
Ik ben alleen vergeten wat de verzamelnaam van die specifieke sql exploits is...

Fuck me if I'm wrong, but isn't your name Gretchen?


  • reskobon
  • Registratie: November 2001
  • Laatst online: 14-08 22:26
Theguide schreef op 15 May 2003 @ 22:58:
De oplossing van zijn fout werd al gegeven een paar posts boven mijn antwoord, dus ik dacht ik help 'm gelijk met fouten die komen gaan :)
Wat betreft die extra query... ik denk niet dat je het zal merken. 1 miliseconde tijdsverlies ten opzichte van een stuk betere security... ik denk dat de keuze makkelijk is :)
Ik ben alleen vergeten wat de verzamelnaam van die specifieke sql exploits is...
Klopt de oplossing kwam ook van mij :)
Die extra query zal idd niet veel uitmaken en is ook een stuk veiliger. Zijn code over het algemeen is niet netjes en ook zijn mysql_connect klopt niet qua parameters.

Leeg


  • TheRebell
  • Registratie: Oktober 2000
  • Laatst online: 22-08 23:25
Volgende x je code graag tussen de code-tags ;)

mysql_connect
mysql_query

hier staat wel zon beetje wat je zoekt...

Verwijderd

Topicstarter
Ik heb nu dit staan : nu krijg k de melding "incorrect password, hoe weet k nu wat de juiste is (niet lachen hoor ;))

<?PHP
if (!isset($username) || !isset($password)) {
header( "Location: http://www.yourdomain/login.htm" );
}
elseif (empty($username) || empty($password)) {
header( "Location: http://www.yourdomain/login.htm" );
}
else{
$user = addslashes($_POST['username']);
$pass = md5($_POST['password']);
$dbHost = "localhost";
$dbUser = "riseandshine32";
$dbDatabase = "riseandshine32_nl_db";
$db = mysql_connect ("localhost", "riseandshine32", "")or die ("Error connecting to database.");
mysql_select_db("$dbDatabase", $db) or die ("Couldn't select the database.");
$result=mysql_query("select * from users where username='$user' AND password='$pass'", $db);
$rowCheck = mysql_num_rows($result);
if($rowCheck > 0){
while($row = mysql_fetch_array($result)){
session_start();
session_register('username');
echo 'Success!';
header( "Location: checkLogin2.php" );
}
}
else {
echo 'Incorrect login name or password. Please try again.';
}
}
?>

Verwijderd

Verwijderd schreef op 15 May 2003 @ 23:03:
Ik heb nu dit staan : nu krijg k de melding "incorrect password, hoe weet k nu wat de juiste is (niet lachen hoor ;))


stukie code :7
Je hebt je password neem ik aan veranderd? :D 8) Kan je hier inloggen: http://www.tripod.lycos.nl/build/php4u/ ?

[ Voor 79% gewijzigd door Verwijderd op 15-05-2003 23:05 ]


  • reskobon
  • Registratie: November 2001
  • Laatst online: 14-08 22:26
mysql_connect("localhost",$dbUser,"paswoord maar die moet jij weten");

&

mysql_select_db($dbDatabase);

dit is de syntax van die twee functies, zoals je ook al had kunnen lezen op www.php.net en therebell heeft je zelfs de precieze links gegeven. Als je er nu niet uitkomt raad ik je aan eerst eens een boek te lezen of je wat meer te gaan verdiepen in php. Dit is namelijk nogal een standaard operatie die je zo zou moeten kunnen maken, succes.

Even voor de duidelijkheid:

Zet je code eens tussen code tags dat leest voor ons ook wat lekkerder!

[ Voor 20% gewijzigd door reskobon op 15-05-2003 23:11 ]

Leeg


Verwijderd

Topicstarter
Bij deze link kan k gewoon inloggen , vreemd he, wat kan k nu t beste doen?, en waar hadden jullie t net over qua veiligheid, dat begrijp k nog niet helemaal

  • TheRebell
  • Registratie: Oktober 2000
  • Laatst online: 22-08 23:25
ik denk dat een mooi boek halen een goede oplossing voor je is. Er zijn ook sites genoeg met bakken aan info. Zie hiervoor de FAQ voor ene paar mooie links.

Kijk we willen je best helpen maar je moet ook zélf een beetje werk doen he...

[ps]
wat ik nog even wil toevoegen is dat je aanroep naar var's niet formidabel is. Volgens mij haal je een hoop door elkaar...
Je moet eens goed letten op je aanroepen naar de global-arrays ($_POST, $_GET, $_SESSION) dan kom je al een end verder

suc7

[ Voor 36% gewijzigd door TheRebell op 15-05-2003 23:14 ]


Verwijderd

Topicstarter
K ben best een eind gekomen nu met jullie hulp, alvast bedankt voor jullie moeite,
k ga es iets anders proberen.

Verwijderd

Verwijderd schreef op 15 May 2003 @ 23:08:
Bij deze link kan k gewoon inloggen , vreemd he, wat kan k nu t beste doen?, en waar hadden jullie t net over qua veiligheid, dat begrijp k nog niet helemaal
Stukje uit de faq:
Gathering of Tweakers is géén helpdesk waar je al je huis-, tuin-, en keukenprobleempjes kwijt kunt, maar een forum voor en door de serieuze hobbyist. We verwachten dat je zelf moeite doet voordat je bij ons aanklopt, je dit in je topicstart duidelijk laat merken en dat je respect toont voor de andere gebruikers en het forum. Doe dus zelf research en laat duidelijk merken dat je dat gedaan hebt. Lijkt Gathering of Tweakers je te hoog gegrepen, dan is BeginnersWeb een mooi en goed alternatief.
Ik wil alleen maar even zeggen dat je misschien beter terecht kunt op http://www.beginnersweb.nl :)

  • dusty
  • Registratie: Mei 2000
  • Laatst online: 21-02 00:06

dusty

Celebrate Life!

Je oplossing staat gewoon in de PHP manual. Leer ook even hoe je een correcte start post maakt door de volgende twee links een keer door te lezen.

post regels
quickstart

Dank U.

Back In Black!
"Je moet haar alleen aan de ketting leggen" - MueR

Pagina: 1

Dit topic is gesloten.