PHP/MySQL, $rdawert wird als string und leider nicht als zahl ausgegeben...

RolandAMS

Cadet 4th Year
Registriert
März 2007
Beiträge
81
namd

in der mitte des skripts bekomme ich bei -->echo "$rdawert"; eine fehlermeldung von wegen: 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?!?!

DANKE!!!

roland


PHP:
<?php
  echo "Textausgabe test.php funkioniert...";
  echo "inluding dbconnect.php:";
  include("dbconnect.php");
  $folgeglied=1;
  while ($folgeglied<10)
  {
//Abfrage des Produktnamens  
  $abfrage_name = "SELECT name FROM `produkttabelle` where id=$folgeglied;";
  $ergebnis1 = mysql_query($abfrage_name);
  while($row = mysql_fetch_object($ergebnis1))
	{
	echo "<br><br><h1>$folgeglied. ";
	echo $row->name;	//Ausgabe
	}
	echo "</h1>";
//Abfrage des VitaminA-Gehaltes und deren Anteils bezüglich RDA
  $abfrage_rdawert = "SELECT bedarf_mg FROM `stofftabelle` where id=$folgeglied;";
  $ergebnis_rdawert = mysql_query($abfrage_rdawert);
  $rdawert = mysql_fetch_object($ergebnis_rdawert);
  echo "$rdawert";
  
  
  $abfrage_vit_a = "SELECT a, (a/($rdawert/100)) AS prozent_von_rda FROM `produkttabelle` where id=$folgeglied;";
  $ergebnis2 = mysql_query($abfrage_vit_a);
  while($row = mysql_fetch_object($ergebnis2))
    {
    echo "<br><br><b>Anteil an Vitamin A:</b>\n ";
	echo $row->a;		//Ausgabe
	echo "<br><br><b>Prozent RDA:</b>\n ";
	echo $row->prozent_von_rda;		//Ausgabe
    }
  $folgeglied++;
  }
  ?>
 
Mit
Code:
echo $rdawert->bedarf_mg;
PHP bietet zwar die "magische" Methode __toString(), um beim Zugriff auf eine Instanz im literalen Kontext eine ebensolche Repräsentation der Instanz zu erhalten, allerdings nützt sie dir in diesem Fall nichts, da du die von mysql_fetch_object() zurückgelieferte Instanz der Klasse StdClass nicht ohne weiteres nachträglich verändern kannst. Davon abgesehen wäre das eine volle Breitseite auf unschuldige Spatzen... :D

greetings, Keita
 
danke keita

$rdawert von 0.8 wird 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 so zu verfassen, dass ein numerischer wert in der variablen $rdawert gespeichert wird?!

danke
ro
 
Zurück
Oben