Just nu i M3-nätverket
Gå till innehåll

Uppdatera formulär utan att förlora inskriven data


Nina75

Rekommendera Poster

Jag har en tråd under Databaser där jag blev rekommenderad att lägga min fråga här istället så då gör jag det :) Bakgrunden till min fråga finns således här: //eforum.idg.se/topic/225022-kombinera-varden-och-lagga-till-falt-i-ett-formular/

Jag fick även en alternativ lösning på nedanstående problem men jag skulle vilja lösa det på ett lite snitsigare sätt ;) och hoppas att nån kanske kan komma med en lösning.

Nedanstående text är citerad från andra tråden...

 

Sitter med mitt formulär för att lägga in filmer och har några funderingar som jag hoppas att någon vänlig själ kan hjälpa mig med.

Jag har nu bestämt mig för att hämta upp alla skådespelare och lägga dom i en optionslist med multipla val. Då kan man enkelt välja skådisar och undviker stavfel och dubletter. Men...

Om skådespelaren inte finns med så måste han/hon läggas in separat och då tillstöter en del problem tror jag iaf...

Säg att jag har lagt in all info om filmen i formuläret och ska lägga till skådisar och inser att Burt Reynolds inte finns med i listan, då måste han läggas in och då gör jag det kanske i ett separat fönster med ett eget formulär? Eller kan jag ha flera formulär på sidan och bara skicka det ena? Hur får jag då sen upp honom i formuläret där all info om filmen redan är inskriven?

Kan man uppdatera formuläret och speciellt listan över skådespelare utan att förlora redan inskriven info i övriga fält? Eller kan man på nåt sätt få in Burt Reynolds och eventuella andra skådespelare som inte redan finns i databasen nedanför formuläret i nån lista?

 

Hoppas ni förstår hur jag vill ha det, formuläret hittar ni på http://www.familjens...st/letustry.php

 

Tack på förhand.

Länk till kommentar
Dela på andra webbplatser

Ja det är fullt möjligt att ha ett separat formulär på samma sida. Dock får det inte ligga ett formulär inuti ett annat, så du får lösa positioneringen med absolut positionering (i css).

jQuery hjälper dig att skicka data med ajax http://api.jquery.com/jQuery.ajax/

 

Så här behöver flödet vara:

1. Om skådisen inte finns klickar användaren på en länk som heter "Skapa ny skådespelare"

2. En div visar sig (visa/dölja divvar kan man också göra smidigt med jquery) och användaren får fylla i fält med de mest nödvändiga data, förnamn efternamn och född(t ex)

 

3. Vid klick på skickaknappen (separat för detta formulär) måste fälten valideras då för och efternamn inte får vara tomma. Om det är ngt fel visas felmeddelande för användaren

 

4. Om fälten är korrekta skickas datan med ajax till en speciell php-sida som lägger till en rad i databasen. Validering bör även ske på denna sida som tar bort ogiltliga tecken osv.

 

5. php-sidan skriver ut det som selectlistan skall innehålla (ID + namn) alternativt endast ID.numret på den post den skapat

6. jquery tar emot datan som skrivits ut (på "success") och populerar selectlistan.

Jag vet inte om man kan skjuta in ett värde sorterat, men det går kanske att ta reda på.

7. Efter populeringen skall det nya värdet med fördel förväljas.

 

Frågor på detta?

Länk till kommentar
Dela på andra webbplatser

Tack för svaret.

Okej, jag tror jag förstår tänket :)

Bara så jag förstått rätt, så ska en separat php-sida skapa posten i databasen och sen skicka tillbaka användaren till formuläret för film med den nya listan av skådespelare (i punkt 4-6)?

 

Jag ska läsa på om länken ovan, hoppas jag kan återkomma med eventuella frågor vid senare tillfälle :)

Tack igen :thumbsup:

Länk till kommentar
Dela på andra webbplatser

Den sidan du skickar formuläret till (med ajax) skickar automatiskt "tillbaka" den utskrivna datan som resultat.

 

Så sidan skall ta emot med $_POST (gärna) och sedan skriva ut som html - är väl lättast i detta fallet.

<option value="1">Anders Andresson</option>
<option value="2">Anders Ottosson</option>
<option value="3">Johan Sunesson</option>

osv.

Länk till kommentar
Dela på andra webbplatser

Arkiverat

Det här ämnet är nu arkiverat och är stängt för ytterligare svar.

×
×
  • Skapa nytt...