Die
Code (php)
1
2
3
4
5
6
7
8
9
2
3
4
5
6
7
8
9
<?php
$database = "voorbeeld";
mysql_select_db($database);
$query = "SELECT * FROM films";
$result = mysql_query($query) or die("Er gaat iets mis");
?>
$database = "voorbeeld";
mysql_select_db($database);
$query = "SELECT * FROM films";
$result = mysql_query($query) or die("Er gaat iets mis");
?>
Waarom krijg ik hier de string terug en leest hij niet de database? Tabel heet daadwerkelijk films en database voorbeeld, dus ik begrijp niet wat ik fout doe?
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
2
3
4
5
6
7
8
9
10
11
12
<?php
$database = "voorbeeld";
$db_selected = mysql_select_db($database);
if (!$db_selected) {
die ('Can\'t use database: ' . mysql_error());
}
$query = "SELECT * FROM films";
$result = mysql_query($query) or die('Could not connect: ' . mysql_error());
?>
$database = "voorbeeld";
$db_selected = mysql_select_db($database);
if (!$db_selected) {
die ('Can\'t use database: ' . mysql_error());
}
$query = "SELECT * FROM films";
$result = mysql_query($query) or die('Could not connect: ' . mysql_error());
?>
Ik krijg als output nu:
Can't use database: Access denied for user ''@'localhost' to database 'voorbeeld'
Niek Limpens op 24/09/2012 12:12:52:
Ben bezig met een cursus, dus dat error handling zegt me nog niet zo veel.
Ik krijg als output nu:
Can't use database: Access denied for user ''@'localhost' to database 'voorbeeld'
Ik krijg als output nu:
Can't use database: Access denied for user ''@'localhost' to database 'voorbeeld'
Je heb nog geen gebruiker geselecteerd bij je database connectie. Gebruik onderstaande connect eens en vervang het met jou database gegevens:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<?php
$host = "localhost";
$databaseuser = "gebruikersnaam";
$databasepassword = "wachtwoord";
$dbname = "databasenaam";
$conn = mysql_connect ($host,$databaseuser,$databasepassword) or die('Could not connect: ' . mysql_error());
$db_selected = mysql_select_db($dbname);
if (!$db_selected) {
die ('Can\'t use database: ' . mysql_error());
}
$query = "SELECT * FROM films";
$result = mysql_query($query) or die('Could not connect: ' . mysql_error());
?>
$host = "localhost";
$databaseuser = "gebruikersnaam";
$databasepassword = "wachtwoord";
$dbname = "databasenaam";
$conn = mysql_connect ($host,$databaseuser,$databasepassword) or die('Could not connect: ' . mysql_error());
$db_selected = mysql_select_db($dbname);
if (!$db_selected) {
die ('Can\'t use database: ' . mysql_error());
}
$query = "SELECT * FROM films";
$result = mysql_query($query) or die('Could not connect: ' . mysql_error());
?>
Ah top, gebruiker dus vergeten. Weer van geleerd! Thanks
Maar ik ben op details aan het vitten.
Vergeet a.u.b de functie die() deze functie had al lang uit php gegooid moeten worden.
Deze is omslachtig en absoluut niet gebruikersvriendelijk en niet netjes !
gebruik goede en correcte foutafhandeling..
Kijk naar try/catch en trigger_error()...
Link 1
Link 2
PS. om even verder te gaan op je huidige script:
- Niet onnodig variabele aanmaken/gebruiken!
- Gebruik nooit select * schrijf gewoon de velden uit.
- en je quotes zijn verkeert (Link 3)
- kijk eens naar mysqli of PDO ipv mysql deze is al heel erg oud en word ook afgeraden door php zelf Link 4
Gewijzigd op 24/09/2012 12:57:28 door Marco PHPJunky
Maar thx voor de feedback, ik ga er mee aan de slag.