Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

PHP - Wert wird leider als String und nicht als Zahl ausgegeben

Frage Entwicklung PHP

Mitglied: RolandAMS

RolandAMS (Level 1) - Jetzt verbinden

20.05.2007, aktualisiert 21.05.2007, 12049 Aufrufe, 8 Kommentare

namd

in der Mitte des Skripts bekomme ich bei -->echo "$rdawert"; eine Fehlermeldung:
01.
Catchable fatal error: Object of class stdClass could not be converted to string.
Weiß jemand wie ich $rdawert als Zahl ausgeben kann um damit ggf. noch weiterzurechnen?!?!
01.
echo "Textausgabe test.php funkioniert..."
02.
echo "inluding dbconnect.php:"
03.
include("dbconnect.php"); 
04.
$folgeglied=1; 
05.
while ($folgeglied<10) 
06.
07.
//Abfrage des Produktnamens   
08.
  $abfrage_name = "SELECT name FROM `produkttabelle` where id=$folgeglied;"
09.
  $ergebnis1 = mysql_query($abfrage_name); 
10.
  while($row = mysql_fetch_object($ergebnis1)) 
11.
12.
    echo "<br><br><h1>$folgeglied. "
13.
    echo $row->name;    //Ausgabe 
14.
15.
    echo "</h1>"
16.
//Abfrage des VitaminA-Gehaltes und deren Anteils bezüglich RDA 
17.
  $abfrage_rdawert = "SELECT bedarf_mg FROM `stofftabelle` where id=$folgeglied;"
18.
  $ergebnis_rdawert = mysql_query($abfrage_rdawert); 
19.
  $rdawert = mysql_fetch_object($ergebnis_rdawert); 
20.
  echo "$rdawert"
21.
   
22.
   
23.
  $abfrage_vit_a = "SELECT a, (a/($rdawert/100)) AS prozent_von_rda FROM `produkttabelle` where id=$folgeglied;"
24.
  $ergebnis2 = mysql_query($abfrage_vit_a); 
25.
  while($row = mysql_fetch_object($ergebnis2)) 
26.
27.
    echo "<br><br><b>Anteil an Vitamin A:</b>\n "
28.
    echo $row->a;        //Ausgabe 
29.
    echo "<br><br><b>Prozent RDA:</b>\n "
30.
    echo $row->prozent_von_rda;        //Ausgabe 
31.
32.
  $folgeglied++; 
33.
  }
Danke!
Roland
[Edit masterG]
Thread geschlossen, weil keine Antworten mehr gebraucht werden![/EDIT]
Mitglied: Dani
20.05.2007 um 23:32 Uhr
G' Abend!
Ich seh den Fehler in 1km Entfernung!

Du erzeugst ja ein Object!! Somit kannst du auch nur mit dem Objektoperator zugreifen.

Bisher:
01.
$rdawert = mysql_fetch_object($ergebnis_rdawert); 
02.
echo "$rdawert";
Soll:
01.
$rdawert = mysql_fetch_object($ergebnis_rdawert); 
02.
echo $row->bedarf_mg;
So müsste es nun gehen.


Gute Nacht
Dani
Bitte warten ..
Mitglied: RolandAMS
21.05.2007 um 00:18 Uhr
hab die änderung vorgenommen, aber er zeigt mir leider keinen wert für bedarf_mg an bzw. kann ich den inhalt nicht benutzen, um damit weiterzurechnen.

ich habe 10 produkte, eine reihe von stoffen, und das in 2 tabellen. ich habe das ja als whileschleife konstruiert. das skript geht jedes produkt durch und soll:
1. die allgemein täglich benötigte dosis an vitamin A ausgeben,
2. die anteilsmenge zb an vitamin A in 100g des produktes ausgeben, und
3. die prozentzahl ermitteln und ausgeben in wie fern 100g vom produkt die tagesdosis erfüllen. da liegt das problem. im skriptbeispiel steht die formel dafür: (a/(8/100)) /wobei hier 8mg die tagesdosis für vitamin a darstellt. wie kann ich es erreichen, dass er sich den wert 8, etc.. aus der stofftabelle raussucht?!

DANKE! das wäre eine super hilfe - wollte meinen ernährungsplan so auf die beine stellen =)
Bitte warten ..
Mitglied: Dani
21.05.2007 um 07:50 Uhr
Moin,
SELECT bedarf_mg FROM `stofftabelle` where id=$folgeglied;
Bist du sicher, dass das obige Statment auch etwas ausgibt?!


Gruß
Dani
Bitte warten ..
Mitglied: RolandAMS
21.05.2007 um 13:14 Uhr
da ich im phpskript $folgeglied als 1 definiert hab is das statement am ende äquivalent zu 1.

01.
SELECT bedarf_mg FROM `stofftabelle`WHERE id =1;
sql console gibt zurück: bedarf_mg = 0.8

da ist eigentlich kein problem an der stelle... ich hoffe du weißt weiteren rat oder bzw wie ich das ganze ähnlich aufziehen kann.

MFG
ro
Bitte warten ..
Mitglied: 36213
21.05.2007 um 13:49 Uhr
namd

in der Mitte des Skripts bekomme ich bei
-->echo "$rdawert"; eine
Fehlermeldung:
01.
> Catchable fatal error: Object of class 
02.
> stdClass could not be converted to string. 
03.
> 
Weiß jemand wie ich $rdawert als Zahl
ausgeben kann um damit ggf. noch
weiterzurechnen?!?!
01.
> echo "Textausgabe test.php 
02.
> funkioniert..."; 
03.
> echo "inluding dbconnect.php:"
04.
> include("dbconnect.php"); 
05.
> $folgeglied=1; 
06.
> while ($folgeglied<10) 
07.
>   { 
08.
> //Abfrage des Produktnamens   
09.
>   $abfrage_name = "SELECT name FROM 
10.
> `produkttabelle` where 
11.
> id=$folgeglied;"; 
12.
>   $ergebnis1 = mysql_query($abfrage_name); 
13.
>   while($row
14.
> mysql_fetch_object($ergebnis1)) 
15.
>     { 
16.
>     echo 
17.
> "<br><br><h1>$folgeglied
18.
> "; 
19.
>     echo $row->name;    //Ausgabe
Komisch, hier machst Du es richtig...
01.
>     } 
02.
>     echo "</h1>"; 
03.
> //Abfrage des VitaminA-Gehaltes und deren 
04.
> Anteils bezüglich RDA 
05.
>   $abfrage_rdawert = "SELECT bedarf_mg 
06.
> FROM `stofftabelle` where 
07.
> id=$folgeglied;"; 
08.
>   $ergebnis_rdawert = 
09.
> mysql_query($abfrage_rdawert); 
10.
>   $rdawert = 
11.
> mysql_fetch_object($ergebnis_rdawert); 
12.
>   echo "$rdawert";
Und hier flashc. $rdawert ist ein Objekt. Probier mal
var_dump($rdawert); aus, dann siehst Du Deinen Fe ler und wie Du ihn beseitigst.

Danke!
Roland

Bitte!
Bitte warten ..
Mitglied: RolandAMS
21.05.2007 um 14:48 Uhr
danke für die info. als fehlermeldung bekomme ich:

01.
object(stdClass)#1 (1) { ["bedarf_mg"]=>  string(3) "0.8" } 
$rdawert von 0.8 wird somit als string gespeichert. joa ich weiß - in der tabelle ist der wert aber als float eingefügt. gibt es da ne möglichkeit die abfrage so mittels php zu verfassen, dass ein numerischer wert in der variablen $rdawert gespeichert wird?!

danke.
ro
Bitte warten ..
Mitglied: 36213
21.05.2007 um 15:25 Uhr
danke für die info. als fehlermeldung
bekomme ich:

Das ist keine Fehlermeldung.

01.
object(stdClass)#1 (1) { 
02.
> ["bedarf_mg"]=>  string(3) 
03.
> "0.8" } 

$rdawert ist ein Objekt.
Dieses Objekt hat ein "Mitglied", nämlich "bedarf_mg". Diesem ist der Wert "0.8" zugeordnet.
Also schreibe echo $rdawert->bedarf_mg", und er wird 0.8 ausgeben.

Wenn Du damit rechnen willst empfehle ich die Umwandlung des Strings nach float, die im Handbuch ausführlich beschrieben ist.

$rdawert von 0.8 wird somit als string
gespeichert. joa ich weiß - in der
tabelle ist der wert aber als float
eingefügt. gibt es da ne
möglichkeit die abfrage so mittels php
zu verfassen, dass ein numerischer wert in
der variablen $rdawert gespeichert wird?!

danke.
ro
Bitte warten ..
Mitglied: RolandAMS
21.05.2007 um 19:12 Uhr
Dankeschön an alle habs geschafft!
Bitte warten ..
Ähnliche Inhalte
C und C++
C-sharp ZIP-Ordner an PHP senden (9)

Frage von Yanmai zum Thema C und C ...

Windows Server
Schlüssel - nicht Wert! - mit Gruppenrichtlinien löschen? (1)

Frage von MyApps2GO.de zum Thema Windows Server ...

Linux
gelöst Php redis an Socket binden? (2)

Frage von FA-jka zum Thema Linux ...

Debian
gelöst Plesk php-fpm Fehler (7)

Frage von sebastian2608 zum Thema Debian ...

Neue Wissensbeiträge
Tipps & Tricks

Wie Hackt man sich am besten in ein Computernetzwerk ein

(29)

Erfahrungsbericht von Herbrich19 zum Thema Tipps & Tricks ...

Humor (lol)

Bester Vorschlag eines Supporttechnikers ever: APC

(15)

Erfahrungsbericht von DerWoWusste zum Thema Humor (lol) ...

Windows Server

Exchange 2010 Active Directory und Windows Server 2016

(4)

Erfahrungsbericht von Herbrich19 zum Thema Windows Server ...

Heiß diskutierte Inhalte
Internet
gelöst Mitarbeiter surft auf unerwünschter Seite - Wie damit umgehen? (38)

Frage von sabines zum Thema Internet ...

Netzwerke
Wie erstelle ich ein Intranet (19)

Frage von Leonardnet zum Thema Netzwerke ...

LAN, WAN, Wireless
gelöst Eintägige Netzwerkunterbrechung trotz Backupleitung (15)

Frage von iAmbricksta zum Thema LAN, WAN, Wireless ...

Netzwerke
VPN-Server einrichten PPTPD-Einrichtung gescheitert (15)

Frage von MIlexx zum Thema Netzwerke ...