SELFPHP: Version 5.8.2 Befehlsreferenz - Tutorial – Kochbuch – Forum für PHP Einsteiger und professionelle Entwickler

SELFPHP


Professional CronJob-Service

Suche



CronJob-Service    
bei SELFPHP mit ...



 + minütlichen Aufrufen
 + eigenem Crontab Eintrag
 + unbegrenzten CronJobs
 + Statistiken
 + Beispielaufrufen
 + Control-Bereich

Führen Sie mit den CronJobs von SELFPHP zeitgesteuert Programme auf Ihrem Server aus. Weitere Infos



:: Buchempfehlung ::

Einführung in XHTML, CSS und Webdesign

Einführung in XHTML, CSS und Webdesign zur Buchempfehlung
 

:: Anbieterverzeichnis ::

Globale Branchen

Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP  

 

:: Newsletter ::

Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 
 

Zurück   PHP Forum > SELFPHP > PHP für Fortgeschrittene und Experten

PHP für Fortgeschrittene und Experten Fortgeschrittene und Experten können hier über ihre Probleme und Bedenken talken

Antwort
 
Themen-Optionen Ansicht
  #1  
Alt 07.03.2005, 17:44:19
CrAnE CrAnE ist offline
Junior Member
 
Registriert seit: Nov 2003
Ort: Neuwied
Alter: 33
Beiträge: 204
CrAnE eine Nachricht über ICQ schicken
Mehrere Mysql verbindungen mit Klasse

Hi,

Ich versuche mit einer Klasse mehrere MySQL Verbindungen herzustellen...
Das sieht dann ungefähr so aus..
$verbindung1 = new mysql;
$verbindung1->connect("host", "user", "pw", 1);
$verbindung1->db("db", 1);

$verbindung2 = new mysql;
$verbindung2->connect("host"; "user", "pw", 2);
$verbindung2>db("db", 2);

so das klappt auch.. jedoch macht scheint es mir, das er die verbindung einfach ersetzt und nicht eine neue startet....

Also die abfrage bei der ersten verbindung klappt... wenn ich dann jedoch die 2te starte kann ich nix mehr aus der 2ten db auslesen....

hier mal ein codeschnipsel
PHP-Code:
class mysql{
    var 
$error false;
    var 
$connection = array();
    var 
$result;
    function 
connect($host$user$pass$id){
      
$connection = @mysql_connect($host$user$pass);
      if(!
$connection){
        
$this->error true;
      }else{
        
$this->connection[$id] = $connection;
      }
    }
    function 
db($db$id){
      
$db = @mysql_select_db($db$this->connection[$id]);
      if(!
$db){
        
$this->error true;
      }
    }

mfg Crane
Mit Zitat antworten
  #2  
Alt 07.03.2005, 18:14:53
Benutzerbild von |Coding
|Coding |Coding ist offline
Administrator
 
Registriert seit: Apr 2002
Ort: Bergheim
Alter: 39
Beiträge: 5.255
|Coding eine Nachricht über Skype™ schicken
AW: Mehrere Mysql verbindungen mit Klasse

ganz einfach:

falsch:
PHP-Code:
var $connection = array();
//...
$connection = @mysql_connect($host$user$pass);
//...
$this->connection[$id] = $connection
wenn du so vorgehst, dann passiert folgendes:

$verbindung1->connect(...): $connect wird als string definiert
$verbindung1->db(...): $connect wird als array definiert (array wird überschrieben)

$verbindung2->connect(...): $connect wird als string definiert
$verbindung2->db(...): $connect wird als array definiert (array wird überschrieben)

merkst du was passiert?

du schmeißt so immer wieder dein array ([private] $connect) weg, kein wunder das du immer nur eine connect resource hast...

du musst das array oder den string umbenennen.
__________________
Gruß |Coding

---
Qozido® - Die Bilderverwaltung mit Logbuch für Taucher und Schnorchler.

www.qozido.de
Mit Zitat antworten
  #3  
Alt 07.03.2005, 18:23:23
CrAnE CrAnE ist offline
Junior Member
 
Registriert seit: Nov 2003
Ort: Neuwied
Alter: 33
Beiträge: 204
CrAnE eine Nachricht über ICQ schicken
AW: Mehrere Mysql verbindungen mit Klasse

hm...
wiso wird durch db das array überschrieben??? wie kann ich das problem lösen??? also man könnte theortisch ja statt "var $connection = array();" einfach "var $connection1;" und "var $connection2;" machen aber dann müsste man sich ja auch ne max anzahl von verbindungen machen.... hast du ne idee/tip?
Mit Zitat antworten
  #4  
Alt 07.03.2005, 18:30:15
Benutzerbild von |Coding
|Coding |Coding ist offline
Administrator
 
Registriert seit: Apr 2002
Ort: Bergheim
Alter: 39
Beiträge: 5.255
|Coding eine Nachricht über Skype™ schicken
AW: Mehrere Mysql verbindungen mit Klasse

nein, ich meine das so:
PHP-Code:
<?php
class mysql
    var 
$error false
    var 
$connection = array(); 
    var 
$result;
    var 
$con '';
    function 
connect($host$user$pass$id){ 
      
$con = @mysql_connect($host$user$pass); 
      if(!
$con){ 
        
$this->error true
      }else{ 
        
$this->connection[$id] = $con
      } 
    } 
    function 
db($db$id){ 
      
$db = @mysql_select_db($db$this->connection[$id]); 
      if(!
$db){ 
        
$this->error true
      } 
    } 
}
?>
__________________
Gruß |Coding

---
Qozido® - Die Bilderverwaltung mit Logbuch für Taucher und Schnorchler.

www.qozido.de
Mit Zitat antworten
  #5  
Alt 07.03.2005, 18:38:18
CrAnE CrAnE ist offline
Junior Member
 
Registriert seit: Nov 2003
Ort: Neuwied
Alter: 33
Beiträge: 204
CrAnE eine Nachricht über ICQ schicken
AW: Mehrere Mysql verbindungen mit Klasse

weiß nicht ob ich jetzt blöd bin aber ich sehe keinen direkten unteschied! das mit "var $con" bring doch meiner meinung nix oder??? du speicherst doch garnix in $con dann müsste da ja $this->con = xxx heißen oder?
Mit Zitat antworten
  #6  
Alt 07.03.2005, 18:42:11
Benutzerbild von |Coding
|Coding |Coding ist offline
Administrator
 
Registriert seit: Apr 2002
Ort: Bergheim
Alter: 39
Beiträge: 5.255
|Coding eine Nachricht über Skype™ schicken
AW: Mehrere Mysql verbindungen mit Klasse

lass das script doch einfach mal laufen...
__________________
Gruß |Coding

---
Qozido® - Die Bilderverwaltung mit Logbuch für Taucher und Schnorchler.

www.qozido.de
Mit Zitat antworten
  #7  
Alt 07.03.2005, 18:50:46
Benutzerbild von |Coding
|Coding |Coding ist offline
Administrator
 
Registriert seit: Apr 2002
Ort: Bergheim
Alter: 39
Beiträge: 5.255
|Coding eine Nachricht über Skype™ schicken
AW: Mehrere Mysql verbindungen mit Klasse

äh, sorry. $con ist ja private und nicht public.

also ist es so richtig:
PHP-Code:
//...
      
$this->con = @mysql_connect($host$user$pass); 
      if(!
$this->con){ 
        
$this->error true
      }else{ 
        
$this->connection[$id] = $this->con;
//... 
__________________
Gruß |Coding

---
Qozido® - Die Bilderverwaltung mit Logbuch für Taucher und Schnorchler.

www.qozido.de
Mit Zitat antworten
  #8  
Alt 07.03.2005, 18:55:44
CrAnE CrAnE ist offline
Junior Member
 
Registriert seit: Nov 2003
Ort: Neuwied
Alter: 33
Beiträge: 204
CrAnE eine Nachricht über ICQ schicken
AW: Mehrere Mysql verbindungen mit Klasse

Klappt nicht! Was soll ich machen.. ich verzweifle bald!
Mit Zitat antworten
  #9  
Alt 07.03.2005, 19:30:51
CrAnE CrAnE ist offline
Junior Member
 
Registriert seit: Nov 2003
Ort: Neuwied
Alter: 33
Beiträge: 204
CrAnE eine Nachricht über ICQ schicken
AW: Mehrere Mysql verbindungen mit Klasse

Hm noch wer da??? ich kann ja mal den fehler posten:

Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource in H:htdocsTestsclasses2.php on line 61

also ich mache 3 abfrage...der genaue ablaus:

ich starte verbindung 1.
mache eine abfrage mit verbindung1.

ich starte verbindung 2
mache eine abfrage mit verbindung 2.

ich mache eine abfrage mit verbindung1.

alle abfragen klappen nur die letzte nicht??? was soll ich machen?
Mit Zitat antworten
  #10  
Alt 07.03.2005, 20:01:29
Benutzerbild von |Coding
|Coding |Coding ist offline
Administrator
 
Registriert seit: Apr 2002
Ort: Bergheim
Alter: 39
Beiträge: 5.255
|Coding eine Nachricht über Skype™ schicken
AW: Mehrere Mysql verbindungen mit Klasse

ok,

weist du was dein problem ist?

1. das mit $this-con wie ich gesagt habe ist richtig.
2. du versuchst die ganze zeit zwei verbindungen zu ein und dem selben server auf zunehmen.
3. du musst der funktion connect() einen rückgabewert verpassen, damit die jeweilige verbingung auch nutzen kann.

4. wenn es probleme gibt poste ich dir die korrekte class.
__________________
Gruß |Coding

---
Qozido® - Die Bilderverwaltung mit Logbuch für Taucher und Schnorchler.

www.qozido.de
Mit Zitat antworten
Antwort


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind aus.
[IMG] Code ist aus.
HTML-Code ist aus.

Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
mySQL DB erstellen und unter PHP nutzen norial MySQLi/PDO_MySQL 1 25.10.2004 12:01:29
php und MySQL Timestamp crowl MySQLi/PDO_MySQL 3 08.07.2004 01:33:33
Andere Klasse aus Klasse aufrufen NanoCyte PHP für Fortgeschrittene und Experten 22 28.06.2004 22:24:53
Blätterfunktion als Klasse! Funjoy PHP Entwicklung und Softwaredesign 0 25.06.2004 00:45:04
MySQL - ORDER BY RAND() und PHP MacMarc PHP Grundlagen 15 05.12.2002 23:23:39


Alle Zeitangaben in WEZ +2. Es ist jetzt 14:22:46 Uhr.


Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2023, Jelsoft Enterprises Ltd.


© 2001-2023 E-Mail SELFPHP OHG, info@selfphp.deImpressumKontakt