|
| 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
| |
|
|