Avatar billede mccookie Seniormester
26. marts 2004 - 10:37 Der er 8 kommentarer og
1 løsning

Problemer med if then

if($hash1_adresse <> $hash2_adresse) {
    $send_mail_til_korpset_vedr_opdatering++;
    $send_mail_til_gruppen_vedr_opdatering++; }
if($hash1_adresse <> $hash2_postnr) {
    $send_mail_til_korpset_vedr_opdatering++;
    $send_mail_til_gruppen_vedr_opdatering++; }
if($hash1_adresse <> $hash2_city) {
    $send_mail_til_korpset_vedr_opdatering++;
    $send_mail_til_gruppen_vedr_opdatering++; }
if($hash1_adresse <> $hash2_land) {
    $send_mail_til_korpset_vedr_opdatering++;
    $send_mail_til_gruppen_vedr_opdatering++; }
if($hash1_adresse <> $hash2_tlf) {
    $send_mail_til_korpset_vedr_opdatering++;
    $send_mail_til_gruppen_vedr_opdatering++; }
if($hash1_adresse <> $hash2_mobil) {
    $send_mail_til_korpset_vedr_opdatering++;
    $send_mail_til_gruppen_vedr_opdatering++; }
if($hash1_adresse <> $hash2_email) {
    $send_mail_til_korpset_vedr_opdatering++;
    $send_mail_til_gruppen_vedr_opdatering++; }

Jeg har ovenstående script.... og uanset om værdierne er ens eller ej-....så sker der ingenting overhovedet.......

Tricket er at jeg gemmer 2 værdiers hash værdi og sammenligner dem, er der en forskell skal de 2 vars tælle 1 op.... men syntes ikke lige at virke...
Avatar billede jpvj Nybegynder
26. marts 2004 - 10:42 #1
Lav følgende tests, og du finder fejlen...

1) Når dit program overhovedet ned i if-sætningerne? Test ved at skrive noget ud på skærmen (en eller anden for for debug info).

2) Hvis 1=ja, så er forklaringen, at udtrykket altid evaluterer falsk. Dine to værdier er - uanset hvad du tror - ens :-)

3) Hvis 2 alligevel ikke holder, så er allersidste mulighed, at du ikke får kigget på de rigtige variable. Udskriv ex. $send_mail_til_korpset_vedr_opdatering både før og efter første if sætning. (Løser også pkt 1).
Avatar billede mccookie Seniormester
26. marts 2004 - 10:45 #2
Denne værdi $send_mail_til_korpset_vedr_opdatering bliver nulstillet for testen kører og der kører fint programkode derefter......


d07686eef3afc33885d09f48323206ae
19952b3beb78fa63e4dde092cb6e28fd

Disse 2 værdier er bestemt ikke ens!!!!
Avatar billede mccookie Seniormester
26. marts 2004 - 10:47 #3
19952b3beb78fa63e4dde092cb6e28fd
19952b3beb78fa63e4dde092cb6e28fd

Så virker den fint med dette:
if($hash1_adresse == $hash2_adresse) {
    $send_mail_til_korpset_vedr_opdatering++;
    $send_mail_til_gruppen_vedr_opdatering++; }

og de bliver begge 1
Avatar billede mccookie Seniormester
26. marts 2004 - 10:48 #4
if(!$hash1_adresse == $hash2_adresse) {
    $send_mail_til_korpset_vedr_opdatering++;
    $send_mail_til_gruppen_vedr_opdatering++; }

og følgende værdier:
19952b3beb78fa63e4dde092cb6e28fd
cb44f10ec665f975447cb530f5917b20

Skulle gerne give 1 men det gør de ikke
Avatar billede mccookie Seniormester
26. marts 2004 - 11:19 #5
I teorien burde det virke........men hvorfor ikke alligevel?
Avatar billede detox Nybegynder
26. marts 2004 - 11:54 #6
if(!$hash1_adresse == $hash2_adresse) { Dur ikke. Du skal buge:

if($hash1_adresse != $hash2_adresse) {

eller:

if($hash1_adresse <> $hash2_adresse) {
Avatar billede detox Nybegynder
26. marts 2004 - 11:56 #7
Hvilket du jo osse gør for oven, så hvorfor det ikke virker for dig ved jeg ikke lige, men det burde det.
Avatar billede mccookie Seniormester
26. marts 2004 - 11:57 #8
'Thank you min ven...........

Post et svar..........
Avatar billede detox Nybegynder
26. marts 2004 - 12:00 #9
Jep, velbekommen
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