AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

[PHP+MySQL] MySQL_Fetch_Array

Ein Thema von Alexander · begonnen am 4. Jan 2004 · letzter Beitrag vom 4. Jan 2004
Antwort Antwort
Alexander

Registriert seit: 28. Aug 2002
Ort: Oldenburg
3.513 Beiträge
 
Turbo Delphi für .NET
 
#1

[PHP+MySQL] MySQL_Fetch_Array

  Alt 4. Jan 2004, 11:54
Hi,
ich glaube ich drehe ncoh durch
Auf meinem lokalen Linux-Server mit Apache und PHP 4.2 funkcitoniert folgendes probelmlos:
Code:
class MySQL {
 var $Error    = 0; // Letzte Datenbank-Fehlermeldung
 var $DB_ID   = 0;

 var $DBName   = 0; // Letzter Datenbank-Name

 function MySQL($hostname, $port,$username,$password) {
  $this->DB_ID = mysql_connect("$hostname","$username","$password")
    or die($this->error = "Keine Verbindung mit dem MySQL Server möglich");
   echo $this-> error;
   return $this->error;
 }

 function SelectDB($db) {
   $this -> DBNAme = $db;
   mysql_select_db($db, $this->DB_ID) or die ($this->error = "Die Datenbank $db existiert nicht");
   echo $this-> error;
   return $this->error;
 }

 function Query($query) {
  return MYSQL_QUERY($query, $this->DB_ID);
//   echo $this-> error;
//   return $this->error;
 }
 function FetchArray($query) {
  //$sql = MYSQL_QUERY($query) or die ($this->error = mysql_error());
  [b] return mysql_fetch_array($query, $this->DB_ID); [/b]// hier kommt der Fehler
 }
 function CloseConnection() {
  return mysql_fetch_array($this->DB_ID);
 }

//********************************************************************/
$db = new MySQL($hostname, $port, $username, $password);
 $db->SelectDB($dbName);
 $query = $db->Query("SELECT * FROM editor_smilies ORDER BY smilies_id DESC");

 $SmilieTbl = "     <table>\n";

 while($inhalt = $db->FetchArray($query)) {
   if (bcmod($i, 4) == 0) {
     $SmilieTbl = $SmilieTbl."        </tr>\n         <tr align=\"center\" valign=\"middle\">\n";
    }
   $SmilieTbl = $SmilieTbl."          <td><a href=\"javascript:emoticon('".$inhalt[ code ]."')\"><img src=\"../../images/smilies/".$inhalt[smile_url]."\" vspace=\"5\" hspace=\"5\" border=\"0\" alt=\"".$inhalt[emoticon]."\" title=\"".$inhalt[emoticon]."\" /></a></td>";
   $i++;
  }
 $SmilieTbl = $SmilieTbl."     </tr></table>    \n";
Aber auf'm Webspace mit PHP 4.3.1 funktioniert das nciht mehr:
Code:
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in klassen.php on line 44
Woran liegt das? An anderer Stelle funktioniert MYSQL_FETCH_ARRAY, allerdings ohne Verwendendung meiner kleinen Klasse, schon, nur hier in Verbindung mit der Klasse nicht... Könnt ihr mir helfen?
Alexander
  Mit Zitat antworten Zitat
Benutzerbild von mirage228
mirage228

Registriert seit: 23. Mär 2003
Ort: Münster
3.750 Beiträge
 
Delphi 2010 Professional
 
#2

Re: [PHP+MySQL] MySQL_Fetch_Array

  Alt 4. Jan 2004, 11:56
das heisst, das das query kein gültiges ergebnis geliefert hat. sprich, das $result, dass du dem fetch_array übergibst, nicht ok ist.

Überprüfe mal den query.

EDIT: In der Zeile drüber ist die Zuweisung an $sql auskommentiert. Du musst dann glaube ich auch $sql an fetch_array übergeben.

mfG
mirage228
David F.
  Mit Zitat antworten Zitat
Alexander

Registriert seit: 28. Aug 2002
Ort: Oldenburg
3.513 Beiträge
 
Turbo Delphi für .NET
 
#3

Re: [PHP+MySQL] MySQL_Fetch_Array

  Alt 4. Jan 2004, 12:10
Zitat:
EDIT: In der Zeile drüber ist die Zuweisung an $sql auskommentiert. Du musst dann glaube ich auch $sql an fetch_array übergeben.
Nene das ist soweit ok. Da ich den Aufruf dahingehend manipuliert habe...
Alexander
  Mit Zitat antworten Zitat
Benutzerbild von mirage228
mirage228

Registriert seit: 23. Mär 2003
Ort: Münster
3.750 Beiträge
 
Delphi 2010 Professional
 
#4

Re: [PHP+MySQL] MySQL_Fetch_Array

  Alt 4. Jan 2004, 12:14
Schau dir mal die Deklaration von fetch_array an

Code:
array mysql_fetch_array ( resource Ergebnis-Kennung [, int Ergebnistyp])
EDIT: Link: http://de3.php.net/manual/de/functio...etch-array.php

du brauchst als ersten parameter keinen query, sondern einen mysql result, den z.B. durch ein mysql_query erhälst.

mfG
mirage228
David F.
  Mit Zitat antworten Zitat
Alexander

Registriert seit: 28. Aug 2002
Ort: Oldenburg
3.513 Beiträge
 
Turbo Delphi für .NET
 
#5

Re: [PHP+MySQL] MySQL_Fetch_Array

  Alt 4. Jan 2004, 12:28
Stimmt schon, aber schau dir mal das hier an:
Code:
$db = new MySQL($hostname, $port, $username, $password);
$db->SelectDB($dbName);
[b]$query = $db->Query("SELECT * FROM editor_smilies ORDER BY smilies_id DESC"); [/b]


$SmilieTbl = " <table>\n";

while($inhalt = $db->FetchArray($query)) { 
if (bcmod($i, 4) == 0) { 
$SmilieTbl = $SmilieTbl." </tr>\n <tr align=\"center\" valign=\"middle\">\n";

$SmilieTbl = $SmilieTbl." <td><a href=\"javascript:emoticon('".$inhalt[ Code ]."')\"><img src=\"../../images/smilies/".$inhalt[smile_url]."\" vspace=\"5\" hspace=\"5\" border=\"0\" alt=\"".$inhalt[emoticon]."\" title=\"".$inhalt[emoticon]."\" /></a></td>";
$i++;
Alexander
  Mit Zitat antworten Zitat
Benutzerbild von mirage228
mirage228

Registriert seit: 23. Mär 2003
Ort: Münster
3.750 Beiträge
 
Delphi 2010 Professional
 
#6

Re: [PHP+MySQL] MySQL_Fetch_Array

  Alt 4. Jan 2004, 12:35
Du könntest gucken, ob der Datenbankname / Inhalt auf deinem Space sich von deiner lokalen Installation unterscheidet.

EDIT:
In der Funktion Query, muss es nicht "mysql_query" (kleingeschrieben) heissen?
Vielleicht macht das Probleme, da PHP case-sensitive ist...

mfG
mirage228
David F.
  Mit Zitat antworten Zitat
Alexander

Registriert seit: 28. Aug 2002
Ort: Oldenburg
3.513 Beiträge
 
Turbo Delphi für .NET
 
#7

Re: [PHP+MySQL] MySQL_Fetch_Array

  Alt 4. Jan 2004, 12:42
Nö eigentlich nicht ...
Aber ich glaube, du hast mir gerade die Lösung genannt:
Zitat:
Du könntest gucken, ob der Datenbankname / Inhalt auf deinem Space sich von deiner lokalen Installation unterscheidet.
Ich habe die SQL-Tabelle noch gar nicht erstellt
Mein Gott wie kann man nur so doof sein
Alexander
  Mit Zitat antworten Zitat
Chewie

Registriert seit: 10. Jun 2002
Ort: Deidesheim
2.886 Beiträge
 
Turbo Delphi für Win32
 
#8

Re: [PHP+MySQL] MySQL_Fetch_Array

  Alt 4. Jan 2004, 12:42
Zitat von mirage228:
In der Funktion Query, muss es nicht "mysql_query" (kleingeschrieben) heissen?
Vielleicht macht das Probleme, da PHP case-sensitive ist...

... Aber nicht bei Funktionen (nur bei Methoden ). Außerdem käme dann die Meldung "undeclared function" oder so etwas in der Art.
Martin Leim
Egal wie dumm man selbst ist, es gibt immer andere, die noch dümmer sind
  Mit Zitat antworten Zitat
Alexander

Registriert seit: 28. Aug 2002
Ort: Oldenburg
3.513 Beiträge
 
Turbo Delphi für .NET
 
#9

Re: [PHP+MySQL] MySQL_Fetch_Array

  Alt 4. Jan 2004, 12:50
Anscheinend funktioniert es immer ncoh nciht
Edit: Jetzt schon ich musste, die gespeicherte ID weglassen
Ist die schon im Query enthalten?
Alexander
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:59 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz