Top-Themen

Aktuelle Themen (A bis Z)

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

Mitglied: RolandAMS

RolandAMS (Level 1) - Jetzt verbinden

20.05.2007, aktualisiert 21.05.2007, 12116 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
Batch & Shell

PowerShell - Werte werden nicht ausgegeben und Formatierung Ausgabe

gelöst Frage von goodbytesBatch & Shell16 Kommentare

Hallo, diese Abfrage im PS-Fenster (Windows PowerShell ISE) gibt im PS-Fenster dieses Ergebnis zurück: Die gleiche Abfrage, nur mit ...

Microsoft Office

Werte in einer Tabelle zählen mit Excel

Frage von achkleinMicrosoft Office8 Kommentare

Hallo, ich führe eine Excel-Tabelle mit von mir ausgestellten Rechnungen. In jeder Zelle steht der Name, die Kundennummer und ...

PHP

PHP String inhalte wiedergeben

gelöst Frage von DasPossumPHP7 Kommentare

Hallo zusammen, ich arbeite gerade an ein kleines Script das mir Linuxbenutzer auf den Webserver ausgeben soll. Bisher habe ...

PHP

PHP - String aufbrechen und speichern

gelöst Frage von WPFORGEPHP3 Kommentare

Hallo, ich habe viele Strings, die nach folgendem Muster aufgebaut sind: $str = "topCat/subcat/subsubCat//endpoint"; Die "Tiefe" dieser Schachtelung ist ...

Neue Wissensbeiträge
Sicherheit

Zero Day-Schwachstelle im Internet Explorer - wird von APT bereits ausgenutzt

Information von kgborn vor 10 StundenSicherheit

Im Kernel des Internet Explorer scheint es eine Zero Day-Lücke zu geben, die von staatlichen Akteuren (APT) im Rahmen ...

Microsoft
Folder Security Viewer-Lizenzen zu gewinnen
Information von kgborn vor 10 StundenMicrosoft

Ich nehme das Thema mal in Absprache mit Frank hier auf, da es für den einen oder anderen Administrator ...

Hardware

Feueralarm killt Festplatten in Rechenzentrum - führt zu größerem Ausfall

Information von kgborn vor 10 StundenHardware10 Kommentare

Noch ein kleiner Beitrag für Administratoren, die in Rechenzentren aktiv sind - so als Fingerzeig. Denn es gibt Szenarien, ...

MikroTik RouterOS

Mikrotik Advisory: Vulnerability exploiting the Winbox port

Information von colinardo vor 10 StundenMikroTik RouterOS

Brand aktuell: Eine Schwachstelle im Winbox-Port bei Mikrotik Routern erlaubt das Auslesen der User-Datenbank der Router. Patch ist aktuell ...

Heiß diskutierte Inhalte
Linux
Linux Server oder Windows Server - lohnt eine Umstellung auf Linux und ebenso basierende SW bei einer langfristigen Planung?
Frage von motus5Linux23 Kommentare

Wir brauchen bei uns einen neuen Server. Dieser wird als Fileserver, Domäne Controller sowie Exchange Server verwendet. Wir versuchen ...

DSL, VDSL
ISP Wechsel auf Vodefone Koax, Gebäudeverkabelung nur per Cat 7
gelöst Frage von wusa88DSL, VDSL18 Kommentare

Hallo Zusammen, ich bin momentan bei Mnet als Glasfaser Kunde und möchte Preis/Leistungs-Technisch zu Kabel Deutschland / Vodafone wechseln. ...

Windows Server
Domänencontroller trennen
Frage von Akit57Windows Server13 Kommentare

Hallo, ich hoffe das mir hier jemand meine Frage trotz der spärlichen Informationen die ich geben kann beantworten kann: ...

LAN, WAN, Wireless
Kommunikation zwischen verschiedenen IP-Bereichen
Frage von DirkHoLAN, WAN, Wireless13 Kommentare

Hallo zusammen, von Unitymedia habe ich ein neues Modem (Connect Box) erhalten, das u.a. IPv4 aber keinen Bridge Mode ...