webForumDet fria alternativet

Funktion

16 svar · 258 visningar · startad av skyman

skymanMedlem sedan juli 20012 450 inlägg
#1

Hur gör man om man vill ha en funktion som körs efter ett knapptryck utan att en ny sida genereras? Funktionen finns alltså på samma sida.
<form action=//funktion
<input type="submit"...
Är det möjligt eller bara krångligt? :q

------------------
-nada-

MarcusMedlem sedan juli 2000449 inlägg
#2

Omöjligt med PHP. Då måste du jobba med något "client-side" språk.

------------------
DinDator.nu PREVIEW

skymanMedlem sedan juli 20012 450 inlägg
#3

Det var tråkigt att höra... vad ska jag då ta mig till :q
Finns det någon genväg, så man INTE behöver gå till en ny sida? I mitt fall blir det en tredje sida man ska gå till och då "tappar" jag variablerna, och de är så många så jag vill inte ha dem i sessions(typ 200 st)... :l Vad göra? Det blir ju fulkodning med massa session-varabler men man kanske inte kan göra nått åt saken...

------------------
-nipp-

MarcusMedlem sedan juli 2000449 inlägg
#4

Ursäkta om det inte hjälper dig på traven, men vad har du skrivit som kräver 200(!) variablar?

KimMedlem sedan jan. 20007 697 inlägg
#5

Bli inte ledsen Arwid, jag förstår att du har många variabler att hålla reda på. Däremot förstår jag inte hur du lyckas få ihop 200 stycken! :o Kanske beror på att du är newbie... :e

Ska du lyckas med något sånt att inte gå till en ny sida så får du köra med t.ex. JavaScript eller VB-script.

------------------
-mucho-

skymanMedlem sedan juli 20012 450 inlägg
#6

Det hör väl inte till saken varför det är så många variabler, och Kim, ta tillbaka det där med newbie. Håll förnedringarna till Cafét.
Ge mig nått tips.
Man han en sida som hämtar en massa olika produkter ut en databas, antalet kan variera eftersom man ävan kan lägga till produkter i den. Man kryssar i och skriver i och donar och har sig. På nästa sida får man se vad man kryssat och skrivit, alltså en verifikation. Sen så ska det läggas in i databasen. Hur göra utan sessions. Man kan ju göra en koll i session-headern som kollar vilka som är i kryssade och ifyllda men enligt vem-det-nu-var här på wF så vad det icke ok att använda loppar i session-headern...

[r]Och Kim, jag heter inte Arwid, skyman är mitt namn...
------------------
-nipp-

[Redigerat av skyman den 29 aug 2001]

MarcusMedlem sedan juli 2000449 inlägg
#7

Tyvärr så har jag ingen direkt lösning på ditt problem. Återkommer om jag får nån idé.

------------------
DinDator.nu PREVIEW

skymanMedlem sedan juli 20012 450 inlägg
#8

Ok.
Kan man göra en paus i sidan? OCh när man trycker på en knapp så fortsätter sidan genereras och längt ner så läggs datan in i databasen kanske? :q

------------------
-nipp-

skymanMedlem sedan juli 20012 450 inlägg
#9

Kim:
Ska du lyckas med något sånt att inte gå till en ny sida så får du köra med t.ex. JavaScript eller VB-script.
Men man kan väl inte köra php i nån av dessa?

------------------
-nipp-

patrickpollyMedlem sedan mars 2001190 inlägg
#10

Skyman,

Om du inte vill använda sessions skulle jag testa att göra så här (inte säkert att det fungerar).

Sida ett: Alla formulären. Innehållet skickas via POST till sida två.

Sida två: innehåller verifikation av informationen på sidan innan. all information från sidan innan lägger du i en array som du sedan använder serialize() på. den serialiserade variabeln lägger du i en <input type=hidden>. sidan skickas via post till sida tre.

Sida tre: Här använder du bara unserialize, "packar" upp arrayen och limmar in i databasen.

Jag har säkert missförstått helt så ovanstående är helt ointressant =) Jag skulle dock rekommendera dig att titta på sessions en gång till, då skulle ditt problem vara ett minne blott :)

//Patrik

------------------
Patrik Lindgren - Alxnet AB
Alxnet.se - gratis webbverktyg

2basMedlem sedan juni 2001181 inlägg
#11

Jag tycker att en array som session variabel låter som lösningen på ditt problem.
Då skapar du bara 1 st sessionvariabel och lagra all info du behöver i den.

/r
var tvungen att ändra lite.
Skriver så oförståligt, så jag inte fattar det själv ;)

------------------
Gratis hemsideadress och email => http://www.has.it

[Redigerat av 2bas den 29 aug 2001]

[Redigerat av 2bas den 29 aug 2001]

skymanMedlem sedan juli 20012 450 inlägg
#12

Jag ser att jag har gjort mer än jag själv visste.
Jag har en array som heter remember som jag kör :

reset($remember_ROY);
while(list($key, $val) = each($remember_ROY)){
// bla bla...
echo $val;}

Jag försöker nu skicka den vidare till nästa sida och det verkar funka... Helt otroligt vad man kan krångla till det ibland för sig själv. Tack för påminnelsen så jag kom på att jag hade den ;)

------------------
-nipp-

skymanMedlem sedan juli 20012 450 inlägg
#13

Trodde jag ja...
remember innhåller ju bara vilken position som jag ville ha med mig, inte själva värdet. x(

Om man har en array : $array.
Sen så har jag två värden som jag vill lägga in i den. Så den ser ut sådär tex:
0,5,1
1,7,3
2,8,1
3,10,1
4,12,3
5,20,2
osv
Första kolumnen är index, andra en position och den tredje ett värde.
Hur skriver man in detta?

$pos='15';
$val='100';
$count='0';
for ($i=1;$i<30;$i++){
  $array[$count, ....??????
  $count++;
}

/r sär skrivning

------------------
-nipp-

[Redigerat av skyman den 29 aug 2001]

[Redigerat av skyman den 29 aug 2001]

patrickpollyMedlem sedan mars 2001190 inlägg
#14

Bygg databasen så varje produkt har ett unikt värde, spara det unika värdet i din array och skicka runt de värdena mellan sidorna. Då behöver du bara ta fram värdena på sista sidan och jämföra dem med databasen. Istället för att skicka en array med kommasepararade värden vilket är onödigt omständigt.

------------------
Patrik Lindgren - Alxnet AB
Alxnet.se - gratis webbverktyg

skymanMedlem sedan juli 20012 450 inlägg
#15

Det komplicerar det ytterligare är att det ska finnas med 'antal' också... då MÅSTE jag ju ha tre kolumner... fast jag ska försöka mig på en variant där jag använder mig av $key som produktID.... :)

------------------
-nipp-

2basMedlem sedan juni 2001181 inlägg
#16

Om du vill ha med antal också skulle jag gjort en flerdimensionell array (sök på array i php manualen) eller så gör du bara två arrayer. En med idnr och en med antal. Bara viktigt att de får samma nycklar ($key). Men det borde inte vara några problem.

------------------
Gratis hemsideadress och email => http://www.has.it

skymanMedlem sedan juli 20012 450 inlägg
#17

Det tror jag säker fungerar, tack. :)
Men jag har nu gjort som jag skrev ovan.
Enklast så...

------------------
-nipp-

135 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
132 ms — hämta tråd, inlägg och bilagor (db)