|  | 		    
					
        
         
          
         
	
          | |  | hvordan ganger jeg 2 variabler ?? Fra : Thomas
 | 
 Dato :  08-07-03 08:09
 | 
 |  | hejsa
 
 dette udtræk burde i sidste kolonne give mig resultatet af antal x nettopris
 men det virker ikke...
 
 hvad gør jeg galt ??
 
 if (!$database) die ('Kunne ikke forbinde til databasen');
 
 mysql_select_db("ruko",$database);
 
 mysql_select_db("ruko",$database) or die('Kunne ikke vælge database');
 
 $foresp = mysql_query("SELECT antal,varegrp,tekst,nettopris FROM status
 
 
 ORDER BY varegrp");
 
 if (!$foresp) die (mysql_error());
 
 print mysql_num_rows($foresp)." fundet<BR><BR>";
 
 $total = $antal*$nettopris;
 
 while ($data = mysql_fetch_array($foresp)) {
 
 echo "<tr><td>$data[0]</td>";
 
 echo "<td>$data[1]</td>";
 
 echo "<td>$data[2]</td>";
 
 echo "<td>$data[3]</td>";
 
 echo "<td>$total</td>";
 
 echo "<td></td></tr>";
 
 
 
 
 |  |  | 
  Rasmus Christian Kaa~ (08-07-2003) 
 
	
          | |  | Kommentar Fra : Rasmus Christian Kaa~
 | 
 Dato :  08-07-03 08:25
 | 
 |  | > dette udtræk burde i sidste kolonne give mig resultatet af antal x
 nettopris
 > men det virker ikke...
 >
 > hvad gør jeg galt ??
 
 du bør nok lige vise udskriften fra det PHP du har skrevet.
 
 
 
 
 |  |  | 
  Jens Tønnesen (08-07-2003) 
 
	
          | |  | Kommentar Fra : Jens Tønnesen
 | 
 Dato :  08-07-03 08:20
 | 
 |  | 
 
            "Thomas" <thomas@4701.dk> skrev i
 dk.edb.internet.webdesign.serverside.php:
 >dette udtræk burde i sidste kolonne give mig resultatet af antal x nettopris
 >men det virker ikke...
 >hvad gør jeg galt ??
 Såvidt jeg kan se gange du de to variable sammen FØR du henter dem ud
 af dit søgeresultat.
 Prøv
 >$foresp = mysql_query("SELECT antal,varegrp,tekst,nettopris FROM status
 (...)
 >while ($data = mysql_fetch_array($foresp)) {
 >echo "<tr><td>$data[0]</td>";
 Det må være antallet
 >echo "<td>$data[1]</td>";
 >echo "<td>$data[2]</td>";
 >echo "<td>$data[3]</td>";
 Og det må være nettopris. Altså er
 $total = $data[0] * $data[3];
 >echo "<td>$total</td>";
 >
 >echo "<td></td></tr>";
 -- 
 Jens Tønnesen - http://www.pressefoto.dk |  |  | 
  Thomas (08-07-2003) 
 
	
          | |  | Kommentar Fra : Thomas
 | 
 Dato :  08-07-03 08:48
 | 
 |  | 
 
            Tak skal du have    jeg har dog stadig et problem med at den ikke vil gange decimalerne, er det
 tabellen der er i forkert format ???
 hvilken type database tabel skal man vælge til tal med 2 decimaler ??
 Thomas
            
             |  |  | 
   Morten Winkler Jørge~ (08-07-2003) 
 
	
          | |  | Kommentar Fra : Morten Winkler Jørge~
 | 
 Dato :  08-07-03 08:54
 | 
 |  | Thomas wrote:
 
 > hvilken type database tabel skal man vælge til tal med 2 decimaler ??
 
 En strengtype af en eller anden slags. php typecaster det automatisk til
 reelle tal når du har brug for det.
 
 Morten
 
 
 |  |  | 
    Thomas (08-07-2003) 
 
	
          | |  | Kommentar Fra : Thomas
 | 
 Dato :  08-07-03 08:56
 | 
 |  | 
 > En strengtype af en eller anden slags. php typecaster det automatisk til
 > reelle tal når du har brug for det.
 
 
 ok, hvordan får jeg den så til at gange decimalerne med som en alm
 regnemaskine ??
 
 thomas
 
 
 
 
 |  |  | 
     Morten Winkler Jørge~ (08-07-2003) 
 
	
          | |  | Kommentar Fra : Morten Winkler Jørge~
 | 
 Dato :  08-07-03 11:16
 | 
 |  | Thomas wrote:
 
 > ok, hvordan får jeg den så til at gange decimalerne med som en alm
 > regnemaskine ??
 
 $a = "2.2";
 $b = "3";
 echo $a*$b;
 
 Sådan Eller var det ikke det du mente?
 
 Morten
 
 
 |  |  | 
      Thomas (08-07-2003) 
 
	
          | |  | Kommentar Fra : Thomas
 | 
 Dato :  08-07-03 11:34
 | 
 |  | 
 > $a = "2.2";
 > $b = "3";
 > echo $a*$b;
 
 
 hejsa
 
 problemet er at sekretæren skriver alle data ind med kommaer som altid og
 derfor vil den ikke lave regnestykket da den kræver punktummer.
 
 derfor skal den på en eller anden måde omformattere kommaerne til
 punktummerne under indskrivningen, kan man det ??
 
 thomas
 
 
 
 
 |  |  | 
       Morten Winkler Jørge~ (08-07-2003) 
 
	
          | |  | Kommentar Fra : Morten Winkler Jørge~
 | 
 Dato :  08-07-03 12:14
 | 
 |  | Thomas wrote:
 
 >
 >> $a = "2.2";
 >> $b = "3";
 >> echo $a*$b;
 >
 > derfor skal den på en eller anden måde omformattere kommaerne til
 > punktummerne under indskrivningen, kan man det ??
 
 $a = "3,3"; // Bemærk kommaet
 $b = "2,0"; // Bemærk kommaet
 
 echo ereg_replace(","  ,  "."  , $a) * ereg_replace(","  ,  "."  , $b);
 
 Morten
 
 
 |  |  | 
        Thomas (08-07-2003) 
 
	
          | |  | Kommentar Fra : Thomas
 | 
 Dato :  08-07-03 13:06
 | 
 |  | 
 > echo ereg_replace(","  ,  "."  , $a) * ereg_replace(","  ,  "."  , $b);
 
 
 så fangede jeg den, gjorde sådan i udtrækket
 
 $net =ereg_replace("," , "." , $data[3]);
 
 hvor jeg så gangede med $net istedet for $data[3]
 
 
 
 
 
 Tak til alle
 
 thomas
 
 
 
 
 |  |  | 
        Peter Brodersen (08-07-2003) 
 
	
          | |  | Kommentar Fra : Peter Brodersen
 | 
 Dato :  08-07-03 17:58
 | 
 |  | On Tue, 08 Jul 2003 13:14:14 +0200, Morten Winkler Jørgensen
 <mwj@INGEN_SPAM_TIL_MIG.mip.sdu.dk> wrote:
 
 >echo ereg_replace(","  ,  "."  , $a) * ereg_replace(","  ,  "."  , $b);
 
 str_replace() i stedet for ereg_replace()...!
 
 I dette tilfælde er der ingen forskel (udover at ereg_replace() er
 sløvere), men en konvertering den anden vej vil være fatal, fx:
 
 echo ereg_replace("."  ,  ","  , $a);
 
 Skal man ikke bruge regulære udtryk, så bør man ikke introducere
 risikoen for fejl.
 
 --
 - Peter Brodersen
 
 
 |  |  | 
    Thomas (08-07-2003) 
 
	
          | |  | Kommentar Fra : Thomas
 | 
 Dato :  08-07-03 09:41
 | 
 |  | ok, jeg har nu fundet løsningen på decimal regneproblemerne, jeg skal
 indskrive tallene med punktum estedet for med komma,
 
 Kan jeg ikke indskrive det som jeg plejer og så få maskinen til at omregne
 et komma til et punktum ???
 
 Thomas
 
 
 
 
 |  |  | 
 |  |