php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2005

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 19.05.2005, 16:51  
Gast
 
Beiträge: n/a
Standard MySQL Result als Rückgabewert benutzen

Ich habe ein Klasse geschrieben die bei der Instanzierung eine SQL Verbindung öffnet. Dazu kommt dann noch die Möglichkeit eine SQL-Abfrage über eine Methode auszuführen. Diese Funktion soll dann das Ergebnis zurück ans Hauptprogramm schicken.
Aber im Hauptprogramm wird dieses Ergebnis nicht als Result erkannt.

Warum kann ich das Result nicht als Rückgabewert benutzen oder kann ich das irgenwie ander lösen.
PHP-Code:
<?php
public function select($squery)
{
    
$result=@mysql_query("SELECT ".$squery);
    if(
$result)                                
    {
        
$this->num=mysql_num_rows($result);
        return(
$result);
    }
    else
    {
        
$this->error="Fehler beim Ausführen der Datenbankabfrage";
        return(
false);
    }
}
?>
Hab bereits im Forum nach diesem Prob gesucht aber hab nichts wirklich brauchbares gefunden.

Danke für jede Hilfe.
 
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 19.05.2005, 17:05  
Moderator
 
Benutzerbild von robo47
 
Registriert seit: 03.09.2004
Beiträge: 11.792
PHP-Kenntnisse:
Fortgeschritten
robo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz sein
Standard

was sagt denn ein var_dump($result);

igitt ein @, weg damit
vor allem solltest du ein vernünftiges errorhandling implementieren :P

mysql error
man sollte in seinen Scripten immer mysql_error() verwenden, in etwa so:
PHP-Code:
$sql "SELECT feld1,feld2 FROM table WHERE id=5";
$result mysql_query($sql) or die(mysql_error().'
Query: '
.$sql); 
robo47 ist offline  
Alt 19.05.2005, 17:16  
Gast
 
Beiträge: n/a
Standard

Du meinst wenn ich den Rückgabewert wie folgt definiere.

return(var_dump($result));

funktioniert auch ned
 
Alt 19.05.2005, 17:22  
Moderator
 
Benutzerbild von robo47
 
Registriert seit: 03.09.2004
Beiträge: 11.792
PHP-Kenntnisse:
Fortgeschritten
robo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz sein
Standard

nein du sollst
1) error_reporting einbauen, vieleicht macht dien query ja ein fehler
2) mal ein var_dump($result); vor das return, um dir den datentyp ausgeben zu lassen
3) vieleicht mal die ganze klasse posten, mit nem beispielquelltext mit dem du testest.

mfg
robo47
robo47 ist offline  
Alt 19.05.2005, 17:23  
Erfahrener Benutzer
 
Registriert seit: 29.10.2004
Beiträge: 1.781
derHund
Standard

Zitat:
Aber im Hauptprogramm wird dieses Ergebnis nicht als Result erkannt.
sondern? wie hast du das festgestellt? was hast du getan, um überhaupt festzustellen, was passiert. zu sagen, daß etwas nicht passiert, hilft niemanden ... es passiert doch immer etwas, es ist nur an dir, festzustellen, was das ist. error_reporting()!
Zitat:
Du meinst wenn ich den Rückgabewert wie folgt definiere.
nein, das war meiner meinung nach nicht gemeint. schau doch bei unbekannten anweisungen einfach im manual nach.
Zitat:
funktioniert auch ned
:motz:
__________________
derHund ist offline  
Alt 19.05.2005, 17:36  
Gast
 
Beiträge: n/a
Standard

Ein Beispiel über die Nutzung im Hauptprogramm:
PHP-Code:
<?php
odb
=new clsdb;
$res=odb->select("feld1,feld2 FROM tabelle WHERE id=1;")
$feld1=mysql_result($res,0,"feld1")
$feld2=mysql_result($res,0,"feld2")
?>
die Meldung im Browser lautet dann.
Warning: mysql_result(): supplied argument is not a valid MySQL result resource in /var/www/html/gmk/site.inc on line 25
 
Alt 19.05.2005, 17:39  
Moderator
 
Benutzerbild von robo47
 
Registriert seit: 03.09.2004
Beiträge: 11.792
PHP-Kenntnisse:
Fortgeschritten
robo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz sein
Standard

naja da du immernoch ned wirklcih befolgst was gesagt wurde
....

rate ich mal wild drauf los

1) du baust keine verbindung auf zur datenbank?
2) du wählst keien datenbank aus?

und du verwendest niregends mysql-error

...

mf
robo47
robo47 ist offline  
Alt 19.05.2005, 17:40  
Gast
 
Beiträge: n/a
Standard

Hättest Du fortgeschrittener Hochstapler eventuell die Güte, auch die SQL Fehlermeldung zu posten, die mysql_error() für solche Fälle auf Lager hat?
 
Alt 19.05.2005, 17:42  
Moderator
 
Benutzerbild von robo47
 
Registriert seit: 03.09.2004
Beiträge: 11.792
PHP-Kenntnisse:
Fortgeschritten
robo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz sein
Standard

ach ja wir sind ja im fortgeschrittenen forum, stop halt:
hier:
Wo hat wer was zu posten ?

Anfänger -> im Anfänger-Forum
Fortgeschrittene -> im Fortgeschrittenen-Forum
Profis -> im Profi-Forum

Anders hätte der Aufbau keine Logik weil ja jeder Hilfe von Profis wollte. Wo wir bei dem Punkt wäre, wer wo hilft.
Jeder hilft überall, solange ihr euch an folgende Grundsätze haltet: (Wer dies nicht tut, muss sich nciht über einen rauen Umgangston wundern)

Definitionen was wer ist:
Profi: http://www.phpfriend.de/ftopic21431.html
Fortgeschrittener: http://www.phpfriend.de/ftopic21515.html

Allgemeines:
http://www.phpfriend.de/ftopic20979.html
und vor allem:
http://www.lugbz.org/documents/smart-questions_de.html
robo47 ist offline  
Alt 19.05.2005, 18:00  
Gast
 
Beiträge: n/a
Standard

Dann schaut es euch selbst an. Ich dachte über sowas wie Datenbankverbindung und der gleichen wär keine Diskussion drüber zu führen.
 
 


Themen-Optionen
Thema bewerten
Thema bewerten:

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 an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource Zabimaru PHP Tipps 2008 7 02.04.2008 13:25
Mysql Server Einstellunen Optimieren pchero Datenbanken 3 01.05.2007 19:50
Not a valid MySQL result ... MessengerNews! PHP Tipps 2006 10 09.08.2006 17:01
Kein Zugriff über ODBC mit der IP-Adresse auf MySql DB Datenbanken 4 09.02.2006 11:04
Schnittstelle zwischen PHP und MySQL klappt net !!! Datenbanken 16 16.10.2005 14:24
[Erledigt] not allowed to connect to this MySQL server PHP Tipps 2005-2 2 23.09.2005 18:34
mysql_result(): supplied argument is not a valid MySQL PHP Tipps 2005-2 4 25.08.2005 14:44
Suche Tipps für Persormance-Steigerung (Geld für Nützliches) Beitragsarchiv 18 16.08.2005 10:57
Unable to jump to row 0 on MySQL result PHP Tipps 2004-2 5 16.11.2004 15:09
Access denied for user: '@localhost' / SYSTEM@localhost Datenbanken 0 10.11.2004 20:35
mySQL result über PHP session übergeben MadCro PHP-Fortgeschrittene 3 29.10.2004 13:23
supplied argument is not a valid MySQL result source PHP Tipps 2004 4 20.08.2004 13:50
[Erledigt] PHP5 &amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;a m p; MySQL Datenbanken 5 01.08.2004 05:47
Häää ?supplied argument is not a valid MySQL result resource Sachse PHP Tipps 2004 4 17.07.2004 18:03
Unable to jump to row 0 on MySQL result index Datenbanken 3 11.06.2004 15:56

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
php rückgabewert mysql verwenden, mysql rückgabewert, mysql_result rückgabewert, mysql rückgabewer, result als rückgabewert php, mysql result rückgabewert, mysql_result returnwert, mysql rückgabewert in, php mysql_result rückgabewert, mysql result, mysql result als select verwenden, wie rückgabewerte benutzen?, mysql t_result

Alle Zeitangaben in WEZ +2. Es ist jetzt 13:59 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.