Mastershrimp: mysql_connect()-Parameter als Variablen einbinden: Syntax!

Hallo!

Ich habe, um bei eventuellen Änderungen nicht alles ändern zu müssen, die Zugangsdaten zu meiner Datenbank in einer Include-Datei abgelegt.

//Datenbank-Zugang:
  $db_url = "localhost"; //Die Adresse der Datenbank
  $db_username = "name"; //Der Benutzername
  $db_passw = "passwort"; //Das dazugehörige Passwort
  $db_name = "dbname"; //Der Name der Datenbank

$connect_string = '"';
  $connect_string .= $db_url;
  $connect_string .= '","';
  $connect_string .= $db_username;
  $connect_string .= '","';
  $connect_string .= $db_passw;
  $connect_string .= '"';

Ich wollte das Ganze dann folgendermaßen im PHP-Code benutzen:

$db=mysql_connect($connect_string);
 mysql_select_db($db_name);

Allerdings sagt er mir, dass das ein "Unknown MySQL Server Host '"localhost","name","passwort"' sei.

Ich schätze mal, dass ich mich bei $connect_string irgendwo vertue - ich weiß aber nicht wo!

Könnte mir jemand sagen, wo ich da Anführungszeichen setzen muss und wo nicht, bzw. wie das Ganze aussehen müsste, wenn's funktionieren soll?

Danke schonmal im Vorraus!

Gruß

Mastershrimp

  1. Hallo,

    du darfst der Funktion nicht nur einen String übergeben, sondern 3:
    mysql_connect($db_url, $db_username, $db_passw);

    Evtl. solltest du dich mal über Funktionen und die Übergabe von Parametern erkundigen.

    cu Benedikt Loepp

    --
    http://www.scriptly.de - der HTML-/PHP-Quellcode-Editor
    1. du darfst der Funktion nicht nur einen String übergeben, sondern 3:
      mysql_connect($db_url, $db_username, $db_passw);

      Ich habe ja mit $connect_string die 3 Variablen zusammengefasst...Dachte ich zumin. Scheint nicht zu funktionieren.

      Ich habe das jetzt so gelöst:

      $db=mysql_connect($db_url,$db_username,$db_passw)
        or die("Fehler beim Verbindungsaufbau mit der Datenbank");

      mysql_select_db($db_name)
        or die("Fehler beim Auswählen der Datenbank");

      mysql_close($db)
        or die("Fehler beim Schließen der Datenbank");

      So müsste das klappen, oder? Komisch. Hat eben nicht - jetzt aber irgendwie schon.

      Danke!

      1. Hello,

        du darfst der Funktion nicht nur einen String übergeben, sondern 3:
        mysql_connect($db_url, $db_username, $db_passw);

        Ich habe ja mit $connect_string die 3 Variablen zusammengefasst...Dachte ich zumin. Scheint nicht zu funktionieren.

        Ist ganz interessant, was Du da versucht hast. Ich musste doch erst stutzen, wer da wann was auflöst...

        Wenn Du einen Text erst parsen lassen willst, wenn er aufgerufen wird, und nicht, wenn er zusammengestellt wird, dann schau Dir mal die Funktion eval() an. http://de3.php.net/manual/de/function.eval.php
        Mit deren Hilfe könntest Du die drei Parameter nebst Funktionsaufruf erst zur Laufzeit auswerten lassen.

        Liebe Grüße aus http://www.braunschweig.de

        Tom

        --
        Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen