php.de

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

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 10.10.2007, 20:34  
Neuer Benutzer
 
Registriert seit: 10.10.2007
Beiträge: 2
darkmana
Standard Mysql PHP Zahlenfeld aus DB abfragen?

Hallo
und ich Begrüsse als Neuling erstmal alle Forumsmitglieder herzlichst.

Habe ein Problem beim auslesen meiner DB. Name Text geht, aber in einem Feld stehen Zahlen hier mal als Spaltenname alter , da bekomme ich einen Fehler in Zeile 21 in form "Warning: mysql_fetch_object(): supplied argument is not a valid MySQL result resource "

PHP-Code:
<?php
  $abfrage 
"SELECT * FROM girls order by Alter LIMIT 10";
  
$ergebnis mysql_query($abfrage);
    while(
$row mysql_fetch_object($ergebnis))     // zeile 21
 
{
  echo 
'<tr>'."\r\n";
    echo 
'<td>'.$row->Foto.'</td>'."\r\n"
    echo 
'<td>'.$row->Nickname.'</td>'."\r\n";
    echo 
'<td>'.$row->Name.'</td>'."\r\n";
    echo 
'<td>'.$row->Alter.'</td>'."\r\n";
    echo 
'<td>'.$row->Partnerwunsch.'</td>'."\r\n";
    echo 
'<td>'.$row->Kontakt.'</td>'."\r\n";
   echo 
'<tr>'."\r\n"
  }
?>
so sieht der code aus. Hoffe mir kann jemand helfen, glaube in der while Schleife stimmt was nicht um ein zahlenfeld auszulesen.

In DB steht Feld Alter auf INT .

Danke G russ Stephan
darkmana ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

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

Alt 10.10.2007, 20:54  
Moderator und Wett-König
 
Benutzerbild von dr.e.
 
Registriert seit: 21.05.2008
Beiträge: 3.657
PHP-Kenntnisse:
Fortgeschritten
dr.e. ist ein Lichtblickdr.e. ist ein Lichtblickdr.e. ist ein Lichtblickdr.e. ist ein Lichtblickdr.e. ist ein Lichtblickdr.e. ist ein Lichtblick
dr.e. eine Nachricht über Skype™ schicken
Standard

Hallo darkmana,

zunächst ein Herliches Willkommen und viel Spass im PHPFriend.de-Forum!

Zitat:
Warning: mysql_fetch_object(): supplied argument is not a valid MySQL result resource
bedeutet immer, dass deine Result-Ressource (hier $ergebnis) keine gültige MySQL-Ergebnis-Menge ist. Das wiederum kann mehrere Ursachen haben:

- du bist nicht zur richtigen Datenbank verbunden
- du hast nach dem Verbinden zur Datenbank keine Datenbank ausgewählt (mysql_select_db())
- seine Abfrage beinhaltet einen Syntaxfehler und kann nicht ausgeführt werden

Letzteres kannst einfach dadurch prüfen, in dem du nach

PHP-Code:
<?php
$ergebnis 
mysql_query($abfrage); 
?>
ein

PHP-Code:
<?php
echo mysql_error();
?>
schreibst. Mit der Datenbank per se, bzw. mit der Schleife hat das nichts zu tun.
__________________
Viele Grüße,
Dr.E.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1. Think about software design before you start to write code!
2. Discuss and review it together with experts!
3. Choose good tools (-> Adventure PHP Framework (APF))!
4. Write clean and reusable software only!
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
dr.e. ist offline  
Alt 10.10.2007, 21:30  
Erfahrener Benutzer
 
Registriert seit: 08.11.2004
Beiträge: 2.079
Der_Gerhard ist zur Zeit noch ein unbeschriebenes Blatt
Der_Gerhard eine Nachricht über ICQ schicken
Standard

Der Fehler dürfte an der Spalte Alter liegen. Das ist ein reserviertes Wort. Du solltest die Spalte daher immer in ` setzen.

Und natürlich solltest Du auch immer das tun, was dr. e. schon genannt hat. Dann kommst Du viel leichter auf die Ursache Deiner Probleme.

Außerdem solltest Du mal die Forumssuche hier benutzen um zu erfahren, warum ein "select *" keine besonders gute Idee ist.
__________________
**********************************
Nein, ich bin nicht die Signatur.
Ich putze hier nur.
**********************************
Der_Gerhard ist offline  
Alt 10.10.2007, 22:09  
Neuer Benutzer
 
Registriert seit: 10.10.2007
Beiträge: 2
darkmana
Standard

Danke Gerhard!
super die Spalte Alter mit ' versehen und schon gehts.

wenn alles funzt arbeite ich mich dann in die Code probs ein. Befasse mich aber erst kurz mit PHP.

Gruss Stephan
darkmana ist offline  
Alt 10.10.2007, 22:21  
Erfahrener Benutzer
 
Registriert seit: 08.11.2004
Beiträge: 2.079
Der_Gerhard ist zur Zeit noch ein unbeschriebenes Blatt
Der_Gerhard eine Nachricht über ICQ schicken
Standard

Zitat:
Zitat von darkmana
Spalte Alter mit ' versehen und schon gehts.
Ich hoffe, das war ein Tippfehler.
Du sollst keinen Apostroph nehmen (einfaches Anführungszeichen), sondern die sog. Backticks.
Falsch: '
Richtig: `

Wenn Du ' genommen hast, sortierst Du nach einer konstanten Zeichenkette, in der "Alter" steht und nicht nach der Spalte.
__________________
**********************************
Nein, ich bin nicht die Signatur.
Ich putze hier nur.
**********************************
Der_Gerhard ist offline  
Alt 11.10.2007, 09:38  
Erfahrener Benutzer
 
Benutzerbild von lazydog
 
Registriert seit: 02.04.2008
Beiträge: 4.032
lazydog befindet sich auf einem aufstrebenden Ast
Standard

Besser wäre es, das Attribut umzubenennen.
Aber das Alter zu speichern finde ich so oder so keine gute Idee, es ändert ja dauernd. Das Geburtsdatum wäre da schon vernünftiger.
__________________
Gruss
L
lazydog ist offline  
Alt 11.10.2007, 09:40  
Moderator
 
Benutzerbild von cycap
 
Registriert seit: 13.02.2008
Beiträge: 6.816
PHP-Kenntnisse:
Fortgeschritten
cycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nett
Standard

Zitat:
SELECT * FROM girls
Was denn für girls? Würd mich jetzt aber mal interessieren
cycap ist offline  
Alt 11.10.2007, 11:16  
Moderator
 
Benutzerbild von cycap
 
Registriert seit: 13.02.2008
Beiträge: 6.816
PHP-Kenntnisse:
Fortgeschritten
cycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nett
Standard

Sorry fürs OT grad

Also lazydog hat schon recht darkmana, du solltest eher sofern möglich das Geburtsdatum speichern. Aber komm nicht auf die Idee da nen String mit '15.12.1982' zu speichern, dann kannste deine Sortierung nämlich vergessen und das ausrechnen des Alters wird zum Kunststück guck dir zu dem Thema mal Timestamps an oder die verschiedenen Datentypen die dir zur Verfügung stehen in der Datenbank.

Auch sehr wichtig ist das was Der_Gerhard geschrieben hat, denn wenn du ORDER BY 'alter' schreibst bekommst du zwar keine Fehlermeldung aber du machst eine völlig sinnlose Sortierung. Merke Strings wie einzufügende Texte eines Formulars weden in ' ' gepackt. Mysql-Felder, Tabellen, etc. werden falls nötig in ` ` geschrieben.

OT: Was sind das denn nun für girls? Vielleicht is ja was für mich dabei
cycap ist offline  
Alt 11.10.2007, 19:47  
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 35.989
PHP-Kenntnisse:
Fortgeschritten
nikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunft
Standard

some OT:

Machs doch wie joghurt. Der hat seit kurzem diese Signatur als Merkhilfe

Zitat:
Zitat von dem joghurt seine Signatur
`Backticks` für Datenbank-, Tabellen-, Spalten-namen und Aliase, 'Hochkomma' für String-Werte Wink
auch OT:

Code:
SELECT * FROM girls
Die meisten girls mögen das glaube nicht.
.
nikosch ist gerade online  
Alt 12.10.2007, 11:50  
Moderator
 
Benutzerbild von cycap
 
Registriert seit: 13.02.2008
Beiträge: 6.816
PHP-Kenntnisse:
Fortgeschritten
cycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nett
Standard

Zitat:
Code:
SELECT * FROM girls
Die meisten girls mögen das glaube nicht.
Solang die Kleidung auch unter * fällt... hihi... wenn die in ner anderen Tabelle steht gibts ärger xD
cycap ist offline  
 


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
Berechnung über mehrere Abfragen aus mysql Slappi PHP Tipps 2008 2 18.12.2007 14:22
PHP bzw. mysql abfragen optimieren Kori Datenbanken 3 26.09.2007 21:02
Daten aus MySQL Datenbank abfragen trivial Datenbanken 2 29.04.2006 17:48
MySql abfragen durcheinander? MrCavity Datenbanken 19 16.11.2005 16:18
[Erledigt] Dynamische Ausgabe von Mysql Abfragen PHP-Fortgeschrittene 1 21.10.2005 10:53
[Erledigt] Jahr und Monat aus DATE spalte in MySQL abfragen. Datenbanken 7 24.09.2005 02:40
Suche Tipps für Persormance-Steigerung (Geld für Nützliches) Beitragsarchiv 18 16.08.2005 10:57
[Erledigt] MySQL Abfragen als Frage-Antwort Datenbanken 0 31.05.2005 18:35
info über mysql status abfragen nieselfriem Datenbanken 4 13.04.2005 09:42
Kann man Mysql Datenbanken abfragen ob Sie verfügbar sind ? Datenbanken 2 12.03.2005 16:39
between datum abfragen mysql hekto Datenbanken 2 12.01.2005 11:07
[Erledigt] PHP, Mysql - Abfragen zusammenfassen evtl SubSelect PHP-Fortgeschrittene 2 02.12.2004 10:42
Password aus mySQL abfragen und vergleichen ob zu User passt PHP Tipps 2004 2 14.10.2004 10:15
Problem mit 2 gleichzeitigen MySQL abfragen PHP Tipps 2004 2 08.07.2004 13:57
MySQL DB Tabellen Kommentar abfragen Datenbanken 3 13.06.2004 22:41

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
zahlenfeld mysql, mysql zahlenfeld, ergebniszeile php mysql ausgeben

Alle Zeitangaben in WEZ +2. Es ist jetzt 19:09 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.