Avatar billede Calle5463 Forsker
10. januar 2011 - 14:34 Der er 10 kommentarer og
1 løsning

Omdirigering fra sag (site1) til kvittering (site2)

Jeg er newbee i mange ting - også html, php og java.

Jeg skal have omdirigeret fra min site1 hvor kunder kan oprette en sag til min site2 hvor de får en kvittering m.m. Har forsøgt med:

function stilom(){window.location.replace("kvittering.php")}

som ligger sammen med (under) en valideringsfunktion mellem
<script language=javascript>    </script>

Men når jeg kalder på funktionen stilom() mellem <body><?PHP ?> får jeg "Fatal error: Call to undefined function stilom() ....."

Hvad gør jeg for at komme videre?
Avatar billede heinzdmx Nybegynder
10. januar 2011 - 15:04 #1
Du skal have det inden i en echo statement (eller print) i din php.

Evt. kan du lave en aflukning af <?php ?> imellem det den funktion.

<script language=javascript>
<?php
  echo 'function stilom() { window.location.replace("kvittering.php")};';
?>
</script>


Det er fordi php tror du kalder en funktion på php-niveau
Avatar billede arne_v Ekspert
10. januar 2011 - 15:21 #2
Og saa er JavaScript != Java
Avatar billede Calle5463 Forsker
10. januar 2011 - 16:28 #3
arne_v: Hvordan skal det forståes?

heinzdmx: har prøvet lidt forskelligt - også kopiere dit forslag over i en test.php. Det virker desværre ikke.

Andre forslag. Kan det gøres på anden måde. Det skal være mellem <?PHP  ?>
Avatar billede heinzdmx Nybegynder
10. januar 2011 - 16:34 #4
med henhold til arnes kommentar: du har oprettet det i kategorien java. Du burde i stedet oprette spørgsmålet i kategorien "javascript" der ligger under programmering -> script -> javascript.

Skriv den kode du har prøvet med så kan jeg se hvad du gør forkert.

Følgende virker fuldt ud som det skal:
<script language=javascript>
<?php
  echo 'function stilom() { window.location.replace("kvittering.php")};';
?>
</script>

<a href="#" onclick="stilom();">hej</a>


Her bliver man ved klik på hej sendt over til kvittering.php
Avatar billede heinzdmx Nybegynder
10. januar 2011 - 16:36 #5
Hov. Fandt en fejl i det jeg har skrevet.. det virker dog stadig upåklageligt i Chrome.

Ret linjen med echo til:

echo 'function stilom() { window.location.replace("kvittering.php"); }';
Avatar billede Calle5463 Forsker
10. januar 2011 - 20:44 #6
Kan jeg flytte tråden eller .. ?

Dit script virker (nu) også hos mig - både i den lille testversion og i min "store" .php-fil.

Men ideen var/er at undgå at brugeren skal trykke på yderligere knapper udover "send forespørgsel" hvis alle mine valideringer (javascripts) af indtastede data melder ok - og nu kommer du formendtlig tilbage med "(idiot), du skal da bare...." - og det helt ok - bare jeg får det til at virke  :-)
Avatar billede heinzdmx Nybegynder
10. januar 2011 - 20:55 #7
Tråden kan ikke flyttes. Alternativet er at du lukker dette spørgsmål og så åbner et nyt spørgsmål. Men i det at den nye søgeløsning ikke kan søge på kategorier er der vel ikke den store skade i det (bare du husker det næste gang).

Når du laver dine valideringer kalder du jo bare "stilom" hvis det er valid.

Men den måde jeg ville løse det på var sådan her:

- Bruger indtaster data
- Bruger trykker på indsend
- Du kører en javascript rutine der tjekker om det er valid, hvis det er udføres en post af data. Her kan du gøre så den poster til "kvittering.php", og skal så bare modtage data i kvittering. Alternativt kan du vælge sende en location header i php.
Avatar billede Calle5463 Forsker
10. januar 2011 - 21:56 #8
...  jaeh, øhm, tjah  :-)  Det så her jeg ikke kan følge med. Jeg kan godt se mig ud af når andre har lavet det hvad der sker - men jeg er for grøn til selv at kunne lave det.

De data bruger har indtastet gemmes i min MySQL tabel - hvordan hænger det sammen med det du skriver. Skal jeg også flytte "insert into .." med over i kvittering. Fik mig til at tænke på: Jeg har faktisk brug for datene i kvittering, så hvis de flyttes med over har jeg også løst en anden opgave.

Hvad mener du - og skulle vi så ikke sluttet den her og fortsætte i en anden (den rigtige - hvad den så hedder - det åbenbart ikke her) tråd - du skal nok få dine point?
Avatar billede heinzdmx Nybegynder
10. januar 2011 - 22:07 #9
Opret et nyt spørgsmål i den rigtige kategori, og lav et link til det her spørgsmål. :)

Derefter kan du lukke det her spørgsmål, så må du lave en samlet vurdering når spørgsmålet er besvaret nok for dig ;)
Avatar billede Calle5463 Forsker
10. januar 2011 - 22:35 #10
Avatar billede Calle5463 Forsker
10. januar 2011 - 23:59 #11
nyt indlæg oprettet andet sted
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
Kurser inden for grundlæggende programmering

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