Avatar billede pelann Nybegynder
19. juni 2001 - 12:04 Der er 17 kommentarer og
1 løsning

Beregning i PHP

Jeg skal beregne 2 felter fra en database, men kan ikke få det til at virke!!!

Jeg skriver sådan:

$totalt = ($row[mdr] + $row[kontingent])

Men den giver ikke noget resultat...

Er der nogen der kan sige hvorfor???

Pelann
Avatar billede repsac Nybegynder
19. juni 2001 - 12:05 #1
Drop paranteserne ...

$totalt = $row[mdr] + $row[kontingent];
Avatar billede htx98i17 Professor
19. juni 2001 - 12:05 #2
$totalt = ($row[mdr] + $row[kontingent]);

hvad giver den så? ingenting, en fejl ?
Avatar billede gizmo-gizmo Nybegynder
19. juni 2001 - 12:06 #3
du skal lige huske ; efter parantesen til sidst
Avatar billede gizmo-gizmo Nybegynder
19. juni 2001 - 12:06 #4
damn :)
Avatar billede limemedia Nybegynder
19. juni 2001 - 12:07 #5
måske $totalt = $row[\"mdr\"]+$row[\"kontingent\"]; tilmed :) det har intet med parenteserne at gøre

/ LJ
Avatar billede repsac Nybegynder
19. juni 2001 - 12:07 #6
:)
Avatar billede htx98i17 Professor
19. juni 2001 - 12:07 #7
paranteser eller ej, det burde virke...
Avatar billede limemedia Nybegynder
19. juni 2001 - 12:08 #8
hiver du felterne ud med mysql_fetch_row eller mysql_fetch_array ?
Avatar billede repsac Nybegynder
19. juni 2001 - 12:08 #9
Nope, men de er totalt overflødige ... :)
Avatar billede limemedia Nybegynder
19. juni 2001 - 12:09 #10
repsac >> det er korrekt... nogle gange anvender man dem dog grundet overskuelighed, men her er det 100% korrekt de er overflødige.
Avatar billede repsac Nybegynder
19. juni 2001 - 12:13 #11
Her vil jeg mene det er at overdrive ganske meget hvis man sætter paranteserne for at gøre det overskueligt.

x = 2+2  eller  x = (2+2) ...

Jeg kunne forstå det hvis det er noget lidt mere komplekst.
x = (23*45)/10 + (27*2) meeen ... 2+2 ... ;o)
Avatar billede pelann Nybegynder
19. juni 2001 - 12:14 #12
Jeg gør det med mysql_fetch_Array!

Og jeg få ingen fejlmeddelser, men heller ingen resultat...
Avatar billede repsac Nybegynder
19. juni 2001 - 12:15 #13
I mit sidste eksempel gør paranteserne det mere overskueligt ...
x = 23*45/10+27*2 er betydeligt mere uoverskueligt end:
x = (23*45)/10 + (27*2) på trods af at det er nøjagtig det samme udsagn. :)
Avatar billede alvion Nybegynder
19. juni 2001 - 12:16 #14
prøv at lave en

var_dump(row);

Så kan du se hvad din $row variabel indeholder
Avatar billede limemedia Nybegynder
19. juni 2001 - 12:16 #15
pelann >> kan du vise os lidt mere kode... hvis $totalt = $row[\"mdr\"]+$row[\"kontingent\"]; ikke virker er der nok noget andet galt... hvordan er din tabel struktur ?
Avatar billede pelann Nybegynder
19. juni 2001 - 12:20 #16
<?
mysql_connect($mysql_server_navn,$mysql_server_bruger,$mysql_server_kode);
mysql_select_db($mysql_database_navn);

$mdr = 12;
$totalt = $row[\"kontigent\"]+$mdr;

$query = mysql_query(\"select * from medlem where id = \'$id\'\");
while ($row = mysql_fetch_Array($query)) {

print (\"<p align=center><font face=verdana size=2 color=FFFFFF>\");
Print \"$totalt\";
}

?>
Avatar billede pelann Nybegynder
19. juni 2001 - 12:26 #17
Jeg har selv fundet fejlen... Jeg skal selvfølgelig have denne linie $query = mysql_query(\"select * from medlem where id = \'$id\'\"); over denne $totalt = $row[\"kontigent\"]+$mdr; 
Avatar billede pelann Nybegynder
19. juni 2001 - 12:47 #18
Jeg har dog lige et spørgsmål mere... Hvis nu jeg sortere på medlemsid istedet, og der er 2 gange kontigent på dette medlemsid, hvordn ligger jeg så dem sammen?? Så skal jeg jo faktisk skrive:

$totalt = $row[\"kontigent\"]*$mdr+$row[\"kontigent\"]*$mdr; , men så bliver det den samme kontigentsats som skrives 2 gange... Er der en måde jeg kan få den til at sige kontigent 1 & 2 skal ganges med antal mdr.????? EKS. kontigent = 120.00 & kontigent = 75.00.  (120+75/*mdr)

Pelann
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester