Ankündigung

Einklappen
Keine Ankündigung bisher.

mySQL mittels COM ansprechen

Einklappen

Neue Werbung 2019

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

  • mySQL mittels COM ansprechen

    Hi,

    wie spreche ich mittels der COM-Schnittstelle und PHP eine mySQL-DB an, um Werte auszulesen???

    Etwas Code zum Verständnis wäre gut :wink: .

    Danke.


    HAT SICH BEREITS ERLEDIGT - SORRY!!!

  • #2
    und wie hat es sich erledigt? wie bist du ans Ziel gelangt?

    Kommentar


    • #3
      Ich habe einfach die ganze COM-Geschichte aussen vor gelassen - obwohl das erst so gefordert wurde - und spreche ganz simpel die DB an und lese Werte aus!


      Code:
      $exapp = new COM("Excel.application") or Die ("Did not connect");
      ...
      //Database connect to server
      $link = mysql_connect("host", "user", "pass") or Die("Keine Verbindung möglich: " . mysql_error());
      //select mySQL-database
      mysql_select_db("myDatabase") or die("Auswahl der Datenbank fehlgeschlagen");
      
      //execute a SQL query
      $query = "SELECT log_name FROM table WHERE id='205'";
      $result = mysql_query($query) or die("Anfrage fehlgeschlagen: " . mysql_error());
      ...
      Aber gleich mal noch eine Frage hinterher:
      Ich lese zu Testzwecken den log_name (varchar255) aus und will ihn ausgeben. Diese Ausgabe erfolgt in einer ExcelDatei in eine Zelle. Parallel lasse ich ihn mir noch über die Konsole anzeigen.
      In der Konsole steht: "JAVA 3D" - ist korrekt! Beim einfügen nach Excel bekomme ich die Meldung "Unsupported Variant Type"!!!

      Ausgabe in Konsole:
      Code:
      //Ausgabe der Ergebnisse in Konsole - zum testen
      echo "<table>\n";
      while ($line = mysql_fetch_array($result, MYSQL_ASSOC)) {
         echo "\t<tr>\n";
         foreach ($line as $col_value) {
             echo "\t\t<td>$col_value</td>\n";
         }
         echo "\t</tr>\n";
      }
      echo "</table>\n";
      Ausgabe in Excel:
      Code:
      $sheets = $exapp->Workbooks[1]->Worksheets(1);    //Select the sheet 
      $sheets->activate;                                                   //Activate it
      $cell = $sheets->Cells(15,11) ;                                //Select the cell K15
      $cell->activate;                                                      //Activate the cell 
      $cell->value = $result;
      Wenn ich mir nach Excel den Typ, statt den Wert ausgeben lasse ($cell->value = gettype($result); ), dann steht dort resource!!!
      Was soll das denn für ein Typ sein - müsste doch varchar255 o.ä. dort stehen? Was kann das bedeuten???

      Danke.

      Kommentar

      Lädt...
      X