Mit 2 Datenbanken arbeiten

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Mit 2 Datenbanken arbeiten

    Hallo ich habe ein problem:

    und zwar funktioniert mysql_select_db($connect1); nicht.

    Der Connectet Trotzdem auf $connect2 und wechselt nicht auf $connect1 wenn ich den befehl benutze -.-

    Was mache ich falsch?

    PHP Code:

    $connect1 
    mysql_connect("localhost""sql4""XXXX");
    $connect2 mysql_connect("localhost""sql1""XXXX");

    mysql_select_db("sql4"$connect1);
    mysql_select_db("sql1"$connect2);

    mysql_select_db($connect1);
     
    $news_sql2 "SELECT email FROM user1 WHERE email!='0' LIMIT 0,2";
    $news_result2 mysql_query($news_sql2) or die('Fehler 3: '.mysql_error());
    while (
    $row2 mysql_fetch_array($news_result2MYSQL_NUM))
    {
    $emailausdb[] = $row2[0];}

    mysql_select_db($connect2);
    $news_sql "SELECT Email FROM letterit_abonnenten WHERE Email!='0' LIMIT 0,2";
    $news_result mysql_query($news_sql) or die('Fehler 3: '.mysql_error());
    while (
    $row mysql_fetch_array($news_resultMYSQL_NUM))
    {
    $emailindb[] = $row[0];}

    echo 
    $emailausdb[0];
    echo 
    $emailindb[0]; 
    Dann kommt halt der Fehler: (weil er auf die falsche Datenbank zugreift ... die Table user1 ist halt in der Datenbank sql4)


    PHP Code:

    Fehler 3
    Table 'sql1.user1' doesn't exist 
    Last edited by Dengo123; 01-08-2009, 17:49.

  • #2
    danke, es hat funktioniert
    Last edited by Dengo123; 01-08-2009, 18:14.

    Comment


    • #3
      PHP Code:
      $connect1 mysql_connect("localhost""sql4""XXXX");
      $connect2 mysql_connect("localhost""sql1""XXXX");

      mysql_select_db("sql4"$connect1);
      mysql_select_db("sql1"$connect2);

      $news_sql2 "SELECT email FROM user1 WHERE email!='0' LIMIT 0,2";
      $result mysql_query($news_sql2$connect1);
      ... 
      wie mein vorredner schon sagte
      Gruß
      Uzu

      private Homepage

      Comment


      • #4
        Ich poste mla hier weiter auch wenn es ein anderes problem ist ...

        also ich möchte meine eMail-Adressen von Datenbank 1 zu Datenbank 2 übertragen....

        allerdings führt er egal ob mit WHILE oder mit FOR schleife .... Das Scrript nur einmal aus ... dann ende ... mit for schleife sogar GARNICHT -.-

        WARUM !?!?

        Also das er nach 10x oder abbricht würde ich ja verstehen aber das er nach 1x aufhört ? also nur eine eMail-Adresse überträgt....

        PHP Code:

        $connect1 
        mysql_connect("localhost""sql4""XXX");
        $connect2 mysql_connect("localhost""sql1""XXX");

        mysql_select_db("sql4"$connect1);
        mysql_select_db("sql1"$connect2);

        mysql_select_db("db1",$connect1);
        mysql_select_db("db2",$connect2);

        $count 1;

        $zahl 100;

          while(
        $count $zahl)
            {

        $news_sql2 "SELECT email FROM user1 WHERE email!='0000000000' LIMIT 0,1"$which2 $connect1;
        $news_result2 mysql_query($news_sql2,$which2) or die('Fehler 3: '.mysql_error());
        while (
        $row2 mysql_fetch_array($news_result2MYSQL_NUM))
        {
        $emailausdb[] = $row2[0];}

        $teile explode("@"$emailausdb[0]);

        $which $connect2;
        MYSQL_QUERY("INSERT INTO letterit_abonnenten
        (BID, Email, domain, Datum, Option1, Option2, Option3, Option4, Code, Abmeldezeit, Status, IP)
        VALUES
        ( '1', '
        $emailausdb[0]', '$teile[1]', '1249148047', '', '', '', '', '', '0', '1', '87.122.15.40')",$which);

        mysql_query("UPDATE user1 SET email='0000000000' WHERE email='$emailausdb[0]'",$which2);

        $count++;


        Comment


        • #5
          Naja das Script ist ja theoretisch fertig und funktioniert ja auch nur die schleife läuft halt nur 1x durch bzw. als for garnicht.

          Comment


          • #6
            Das Problem liegt vermutlich daran, dass die Schleife nur einmal durchlaufen wird und dann mit einem Fehler abbricht. Was ergibt denn ein
            PHP Code:
            ... or die(mysql_error()); 
            hinter jedem Query?

            Hast du auch mal in der Schleife $count ausgeben lassen? Außerdem weiß ich nicht, ob du diesen Code überhaupt verstanden hast. Das ist völliger Tinnef:
            PHP Code:
            $connect1 mysql_connect("localhost""sql4""XXX");
            $connect2 mysql_connect("localhost""sql1""XXX");

            mysql_select_db("sql4"$connect1);
            mysql_select_db("sql1"$connect2);

            mysql_select_db("db1",$connect1);
            mysql_select_db("db2",$connect2); 
            Vieleicht solltest du dir erst mal das hier zu Gemüte führen.

            Peter
            Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
            Meine Seite

            Comment


            • #7
              Ich habs geschaft, danke
              Last edited by Dengo123; 01-08-2009, 20:39.

              Comment


              • #8
                Originally posted by Dengo123 View Post
                Ich habs geschaft, danke
                Dann poste bitte die Lösung und die Ursache. Für andere, die auch so ein Problem haben und wider Erwarten die SuFu nutzen.

                Danke
                Peter
                Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
                Meine Seite

                Comment


                • #9
                  Bitte entschuldige, hier meine Lösung:

                  Die Ursache ... ist ne gute Frage hab nen fehler "duplicated entry" erhalten. Daher hole ich jetzt nicht nur einen Eintrag aus der DB jetzt raus sondern alle auf einmal und geh die halt mit $a durch

                  und nochmal danke für eure hilfe

                  PHP Code:

                  <?php

                  $connect1 
                  mysql_connect("localhost""sql4""XXXX");
                  $connect2 mysql_connect("localhost""sql1""XXX");

                  mysql_select_db("sql4"$connect1);
                  mysql_select_db("sql1"$connect2);


                  $news_sql2 "SELECT email FROM user1 WHERE email!='0000000000'"$which2 $connect1;
                  $news_result2 mysql_query($news_sql2,$which2) or die('Fehler 3: '.mysql_error());
                  while (
                  $row2 mysql_fetch_array($news_result2MYSQL_NUM))
                  {
                  $emailausdb[] = $row2[0];}

                  $countx count($emailausdb);

                  $count 0;
                  $a 0;

                    while(
                  $count $countx)
                      {

                  $teile explode("@"$emailausdb[$a]);

                  $which $connect2;
                  MYSQL_QUERY("INSERT INTO letterit_abonnenten
                  (BID, Email, domain, Datum, Option1, Option2, Option3, Option4, Code, Abmeldezeit, Status, IP)
                  VALUES
                  ( '1', '
                  $emailausdb[$a]', '$teile[1]', '1249148047', '', '', '', '', '', '0', '1', '87.122.15.40')",$which);

                  mysql_query("UPDATE user1 SET email='0000000000' WHERE email='$emailausdb[$a]'",$which2);

                  echo 
                  mysql_error();

                  $count++;
                  $a++;

                  }


                  ?>
                  Last edited by Dengo123; 01-08-2009, 21:11.

                  Comment

                  Working...
                  X