Mit 2 Datenbanken arbeiten

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • 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 
    Zuletzt geändert von Dengo123; 01.08.2009, 18:49.

  • #2
    danke, es hat funktioniert
    Zuletzt geändert von Dengo123; 01.08.2009, 19:14.

    Kommentar


    • #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

      Kommentar


      • #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++;


        Kommentar


        • #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.

          Kommentar


          • #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

            Kommentar


            • #7
              Ich habs geschaft, danke
              Zuletzt geändert von Dengo123; 01.08.2009, 21:39.

              Kommentar


              • #8
                Zitat von Dengo123 Beitrag anzeigen
                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

                Kommentar


                • #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++;

                  }


                  ?>
                  Zuletzt geändert von Dengo123; 01.08.2009, 22:11.

                  Kommentar

                  Lädt...
                  X