|
| Hvorfor virker dette ikke? Fra : Alex Berg |
Dato : 30-01-05 22:19 |
|
<?php
$db_host = "localhost";
$db_username = "username";
$db_password = "password";
$db_name = "database";
function ConnectToMySQL() {
$link = mysql_connect( $db_host, $db_username,$db_password);
if (!$link) {
die('Could not connect: ' . mysql_error());
}
return($link);
}
?>
Alex Berg
www.max30.dk
Bliv overvægten kvit. Brug Max30 tit.
| |
Dan Storm (30-01-2005)
| Kommentar Fra : Dan Storm |
Dato : 30-01-05 22:48 |
|
Måske fordi det ikke giver mening ???
Hvad vil du med return($link); ?
<?php
$db_host = "localhost";
$db_username = "username";
$db_password = "password";
$db_name = "database";
function ConnectToMySQL() {
if(@mysql_connect( $db_host, $db_username, $db_password)) {
if(@mysql_select_db($db_name)) {
return 1;
}else{
return 0;
}
}else{
return 0;
}
}
if(ConnectToMySQL()) {
echo 'Forbundet';
}else{
echo 'Ikke forbundet';
}
?>
(utestet)
Ikke fordi jeg kan se hvad du vil med en funktion på den måde, men igen,
du har nok et større formål...
--
Dan Storm
http://err0r.dk
storm@err0r.dk
PGP Public key på http://err0r.dk/pubring.pkr
>>> husk på; en ekspert er en person der har begået alle fejl mulige
inden for et bestemt område
| |
Jesper Juul-Mortense~ (30-01-2005)
| Kommentar Fra : Jesper Juul-Mortense~ |
Dato : 30-01-05 23:00 |
|
On Sun, 30 Jan 2005 22:47:41 +0100, Dan Storm
<shadyz@_REMOVETHIS_err0r.dk> wrote:
>Måske fordi det ikke giver mening ???
Det giver god mening i mine øjne...
>Hvad vil du med return($link); ?
Bruge den i fremtidige kald til f.eks. mysql_query().
Afhængigt af hvad man vil opnå og opsætning kan det være farligt at
antage den sidste forbindelse til en MySQL serveren også er den rette.
/Jesper
| |
Jesper Juul-Mortense~ (30-01-2005)
| Kommentar Fra : Jesper Juul-Mortense~ |
Dato : 30-01-05 22:55 |
| | |
Morten Fangel (30-01-2005)
| Kommentar Fra : Morten Fangel |
Dato : 30-01-05 23:03 |
|
Alex Berg wrote:
> <?php
> $db_host = "localhost";
> $db_username = "username";
> $db_password = "password";
> $db_name = "database";
>
> function ConnectToMySQL() {
> $link = mysql_connect( $db_host, $db_username,$db_password);
>
> if (!$link) {
> die('Could not connect: ' . mysql_error());
> }
> return($link);
> }
> ?>
Det virker ikke pga PHP's variabel scope - variabler deklareret uden for
en funktion er ikke som standard tilgængelig inde i en funktion - disse
skal enten overføres via parametre, eg
function ConnectToMySQL($db_host, $db_user, $d..){
...
}
ConnectToMySQL($db_h....);
eller også skal de gøres globale, eg
function ConnectTOMySQL(){
global $db_host, $db_user, $db_pa...
...
}
ConnectToMySQL();
---
Som også skrevet i det andet svar du har modtaget, så giver det ingen
mening at returnere selve linket, da dette bare er en resource-handle,
og denne som standard er global..
Fangel
| |
Peter Brodersen (30-01-2005)
| Kommentar Fra : Peter Brodersen |
Dato : 30-01-05 23:13 |
|
On Sun, 30 Jan 2005 23:03:13 +0100, Morten Fangel <mfa@desi-dev.dk>
wrote:
>Som også skrevet i det andet svar du har modtaget, så giver det ingen
>mening at returnere selve linket, da dette bare er en resource-handle,
>og denne som standard er global..
Det *kan* være overflødigt, men det behøver ikke at være decideret
meningsløst. Det er i hvert fald lettere at administrere flere
conncetions, hvis man explicit angiver hvilken connection, man vil
gøre brug af.
--
- Peter Brodersen
| |
|
|