Status mysql-server controleren
Hoe kan ik ervoor zorgen dat als de mysql-server van mijn website platligt, er een alternatieve index.php op mijn website terechtkomt? Want nu is de hele layout verpest met foutmeldingen als deze server platligt.
Bedankt!
je kunt als je in je index.php een verbinding maakt of die wel succesvol gemaakt is, als dat niet het geval is laat je een andere pagina zien (dit kan zowel met een include als een forward met een header)
Je mysql_connect() afvangen met een if/elseje zou voldoende moeten zijn toch?
Als je probeerd verbinding te maken naar je database kan je controleren of de verbinding tot stand is gekomen of niet.. Zo ja ga je naar de 1ne index.php toe en zo niet ga je naar de andere index.php toe.....
Code (php)
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
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
<?
//logingegevens en standaard connectie met de database
$host = "localhost"; //meestal localhost
$user = "***";
$pass = "***";
$db = "b3cz2d";
$connection = mysql_connect( $host, $user, $pass );
// connection made ?
if( $connection )
{
// select the database
if( !mysql_select_db( $db, $connection ) )
{
// could not select database!
die('Kon de database niet selecteren! Error: ' . mysql_error() );
}
}
// could not connect to the database
else{
header('Location: ../error.htm');
}
?>
//logingegevens en standaard connectie met de database
$host = "localhost"; //meestal localhost
$user = "***";
$pass = "***";
$db = "b3cz2d";
$connection = mysql_connect( $host, $user, $pass );
// connection made ?
if( $connection )
{
// select the database
if( !mysql_select_db( $db, $connection ) )
{
// could not select database!
die('Kon de database niet selecteren! Error: ' . mysql_error() );
}
}
// could not connect to the database
else{
header('Location: ../error.htm');
}
?>
Parse error: syntax error, unexpected T_VARIABLE in /opt/www/heuninckr/web/www.aczele.be/config/dbconnect.php on line 4
ps. Begin je php code liever altijd met
Code (php)
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
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
<?php
//logingegevensenstandaardconnectiemetdedatabase
$host="mysqlhost";
$user="lalala";
$pass="lalalala";
$db="lalala";
$connection=mysql_connect($host,$user,$pass);
//connectionmade?
if($connection)
{
//selectthedatabase
if(!mysql_select_db($db,$connection))
{
//couldnotselectdatabase!
die('Kondedatabasenietselecteren!Error:'.mysql_error());
}
}
//couldnotconnecttothedatabase
else{
header('Location:error_db.php');
}
?>
//logingegevensenstandaardconnectiemetdedatabase
$host="mysqlhost";
$user="lalala";
$pass="lalalala";
$db="lalala";
$connection=mysql_connect($host,$user,$pass);
//connectionmade?
if($connection)
{
//selectthedatabase
if(!mysql_select_db($db,$connection))
{
//couldnotselectdatabase!
die('Kondedatabasenietselecteren!Error:'.mysql_error());
}
}
//couldnotconnecttothedatabase
else{
header('Location:error_db.php');
}
?>
juist hetzelde als die van hipska
Hmm, ik krijg geen syntax error hoor als ik jouw code uitvoer. Ik krijg alleen een error op de mysql_connect, maar dat is logisch...
deze code (die ik normaal gebruik) werkt wel:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
2
3
4
5
6
7
8
9
10
11
12
13
<?php
$db_host = 'mysqlhost';
$db_user = 'lala';
$db_pass = 'lala';
$db_db = 'lala';
$link = mysql_connect($db_host, $db_user, $db_pass);
if (!$link) {
printf(mysql_error($link));
} else {
mysql_select_db($db_db, $link);
}
?>
$db_host = 'mysqlhost';
$db_user = 'lala';
$db_pass = 'lala';
$db_db = 'lala';
$link = mysql_connect($db_host, $db_user, $db_pass);
if (!$link) {
printf(mysql_error($link));
} else {
mysql_select_db($db_db, $link);
}
?>
Het zou allemaal niet mogen uitmaken, maar proberen kan geen kwaad.
nope, lukt allemaal niet, echt heel raar. iemand tips?
oke wat heb je nu staan in dat script als ik vragen mag?
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
2
3
4
5
6
7
8
9
10
11
12
13
<?php
$db_host = 'mysqlhost';
$db_user = 'lala';
$db_pass = 'lala';
$db_db = 'lala';
$link = mysql_connect($db_host, $db_user, $db_pass);
if (!$link) {
printf(mysql_error($link));
} else {
mysql_select_db($db_db, $link);
}
?>
$db_host = 'mysqlhost';
$db_user = 'lala';
$db_pass = 'lala';
$db_db = 'lala';
$link = mysql_connect($db_host, $db_user, $db_pass);
if (!$link) {
printf(mysql_error($link));
} else {
mysql_select_db($db_db, $link);
}
?>
De error-afhandeling zit hier echter niet in. Indien ik het script van hipska gebruik, kan ik mijn website niet meer bekijken (geeft hij error's weer, vb. Parse error: syntax error, unexpected T_VARIABLE in /opt/www/heuninckr/web/www.aczele.be/config/dbconnect.php on line 4)
en wat wil je nou precies berijken of heb je het al berijkt.....
Marco schreef op 12.08.2007 16:03:
en wat wil je nou precies berijken of heb je het al berijkt.....
wat ik wil bereiken: Dat het scriptje van hipska werkt bij mij :/
Dit zorgt ervoor dat als de mysql-server down is, de gebruiker geen ver***** layout ziet, maar een nette error-pagina (http://www.aczele.be/error_db.html).
Heb je alle spaties al uit het script gehaald
Hmm, je kunt toch ook gewoon zelf in jouw scriptje een melding inbouwen als de verbinding mislukt? Lijkt me dat regel 9 daar uitermate geschikt voor is... :)