+ Antworten
Ergebnis 1 bis 6 von 6

Thema: Abfrage auf eine weitere mySql-Datenbank

  1. #1
    Neu an Board
    Registriert seit
    21.10.2006
    Ort
    Linz (Österreich)
    Alter
    41
    Beiträge
    3
    Bedankte sich
    1
    Erhielt 0 Danksagungen
    in 0 Beiträgen

    Standard Abfrage auf eine weitere mySql-Datenbank

    Hallo,

    Ich habe Probleme mit der Abfrage einer (weiteren) mySQL-datenbank (mySQL 5.0.26) aus Joomal 1.0.11. Ich versuche eine eGroupWare Tabelle auszulesen. Dazu habe ich eine Demo-Komponente ("com_dailymessage") installiert und einen (Admin-)Menüaufruf mit unten angeführter Funktion überschrieben.

    Die ausgelesene Tabelle wird tadellos zurückliefert - jedoch werden folgende Fehlermeldungen auf der Seite anzeigt:

    **************************************************
    Warning: mysql_query(): 11 is not a valid MySQL-Link resource in C:\Program Files\Apache\WWW\Joomla_1.0.11\includes\database.p hp on line 287
    Warning: mysql_errno(): 11 is not a valid MySQL-Link resource in C:\Program Files\Apache\WWW\Joomla_1.0.11\includes\database.p hp on line 289
    Warning: mysql_error(): 11 is not a valid MySQL-Link resource in C:\Program Files\Apache\WWW\Joomla_1.0.11\includes\database.p hp on line 290
    Warning: Invalid argument supplied for foreach() in C:\Program Files\Apache\WWW\Joomla_1.0.11\administrator\inclu des\admin.php on line 95
    **************************************************
    function listeGroupware( $option, &$rows )
    {
    $mySqlServer = 'localhost';
    $mySqlBenutzer = 'root';
    $mySqlKennwort = 'xxxxxxxxx';
    $mySqlDatenbank = 'egroupware';
    $kategorie = 6; //welche Kategorie will ich anzeigen? (aus Kategorie-Abfrage)

    $link = mysql_connect($mySqlServer,$mySqlBenutzer,$mySqlKe nnwort);
    if (!$link) {
    die('<br>keine Verbindung möglich: </br>' . mysql_error());

    }

    if ( !mysql_select_db($mySqlDatenbank,$link) ) {
    echo "<p>Auswahl der Datenbank zur Zeit nicht moeglich:" .mysql_error()."</p>" ;
    }

    $query = " SELECT ";
    $query .= "DATE_FORMAT(FROM_UNIXTIME(cal_start),'%Y-%m-%d %h:%i:%s'), ";
    $query .= "DATE_FORMAT(FROM_UNIXTIME(cal_end),'%Y-%m-%d %h:%i:%s'), ";
    $query .= "cal_title, cal_description, cal_location ";
    $query .= ", egw_cal.cal_id, cal_owner, cal_category, cal_priority, cal_public ";
    $query .= "FROM egw_cal JOIN egw_cal_dates ON egw_cal.cal_id=egw_cal_dates.cal_id ";
    //$query .= "WHERE cal_public = 1 AND cal_category = ";
    //$query .= $kategorie;
    $result = mysql_query($query,$link);
    if (!$result) {
    die('Ungültige Abfrage: ' . mysql_error());
    }
    // $rows = mysql_fetch_array($result, MYSQL_ASSOC);
    echo "<table border=\"5\">\n";
    echo "\t\t<td>von </td>\n";
    echo "\t\t<td>bis</td>\n";
    echo "\t\t<td>Titel</td>\n";
    echo "\t\t<td>Beschreibung</td>\n";
    echo "\t\t<td>Ort</td>\n";

    while ($row = mysql_fetch_array($result, MYSQL_ASSOC)) {
    echo "\t<tr>\n";
    foreach ($row as $col_value) {
    echo "\t\t<td>$col_value</td>\n";
    }
    echo "\t</tr>\n";
    }
    echo "</table>\n";

    mysql_free_result($result);
    mysql_close ($link);
    }

    o.a. Funktion ist war alles andere als sauber implementiert, aber trotzdem verstehe ich die Fehlermeldungen nicht.
    Gibts ggf. samples, die mir weiterhelfen könnten?
    Muss man irgendwelche globalen Variablen (zurück-)setzen?
    Gibts vielleicht schon jemanden der eGroupware in Joomla eingebunden hat? *g*
    ... viele Fragen eines Joomla-newbies

    Vielleicht kann mir jemand helfen,
    hellblau

  2. #2
    axel.sauerhoefer
    Gast

    Standard

    Hi,

    welche PHP Version verwendest du?

    Ich vermute mal du bentutz den gleichen Datenbankbenutzer? Wenn dies der Fall ist, solltest du deinen connect wie folgt ausführen:

    Code:
    $link = mysql_connect($mySqlServer,$mySqlBenutzer,$mySqlKennwort, true);
    Das true am Ende bedeutet, das eine neue Verbindung geöffnet wird, andernfalls bekommst du die Verbindung der global $database zurück. Dies hat zur folge das du die interne Resource veränderst ( mysql_select_db usw... ), der nächste sql schlägt natürlich fehl, da du auf einer ganz anderen Datenbank bist

    Zitat Zitat von PHP Doku
    Für den Fall, dass ein zweiter Aufruf von mysql_connect() mit den gleichen Argumenten erfolgt, wird keine neue Verbindung aufgebaut, sondern die Verbindungs-Kennung der schon bestehenden Verbindung zurückgeliefert. Der Parameter neue_Verbindung beeinflusst dieses Verhalten und mysql_connect() öffnet immer eine neue Verbindung, sogar dann, wenn mysql_connect() zu einem früheren Zeitpunkt mit den gleichen Parametern aufgerufen wurde.
    Probiers mal aus und sag bescheid.


    gruss axel

  3. #3
    Neu an Board
    Registriert seit
    21.10.2006
    Ort
    Linz (Österreich)
    Alter
    41
    Beiträge
    3
    Bedankte sich
    1
    Erhielt 0 Danksagungen
    in 0 Beiträgen

    Standard

    Hallo,

    Danke für Deine rasche Antwort, ich kanns aber leider erst am Sonntag ausprobieren; melde mich dann, obs geklappt hat.

    Danke,
    hellblau

  4. #4
    axel.sauerhoefer
    Gast

    Standard

    Hi,

    ja sag bitte bescheid, würde mich interessieren ob es dadran lag.

    gruss axel

  5. Erhielt Danksagungen von:


  6. #5
    Neu an Board
    Registriert seit
    21.10.2006
    Ort
    Linz (Österreich)
    Alter
    41
    Beiträge
    3
    Bedankte sich
    1
    Erhielt 0 Danksagungen
    in 0 Beiträgen

    Standard

    Hallo Axel,

    hat wunderbar geklappt!

    Danke,
    hellblau

  7. #6
    axel.sauerhoefer
    Gast

    Standard

    Hi,

    bitte als gelöst markieren.

    gruss axel

+ Antworten

Ähnliche Themen

  1. 1 Mysql Datenbank / 2 Domains = Ein Zugriff???
    Von heffas im Forum Off Topic
    Antworten: 4
    Letzter Beitrag: 10.10.2006, 21:45
  2. Update von TFSforMAMBO 2.01 auf JoomlaStats 2.1
    Von zandl im Forum Joomla Komponenten
    Antworten: 1
    Letzter Beitrag: 09.05.2006, 14:36
  3. Problem Publishing von Mambo auf Linux-Server mit Mamboshop
    Von patbal2005 im Forum Mambo Installation
    Antworten: 4
    Letzter Beitrag: 28.10.2005, 08:56
  4. Content taucht nicht mehr in der Datenbank auf!
    Von EPICENTER im Forum Allgemeine Fragen zu Mambo
    Antworten: 0
    Letzter Beitrag: 03.05.2005, 15:42
  5. Remote DB (Datenbank auf anderem Host)
    Von Tribal6 im Forum Mambo Installation
    Antworten: 3
    Letzter Beitrag: 20.01.2005, 20:12

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein