Gå til innhold

Oppdatering KUN ved ny post


Anbefalte innlegg

Jeg driver å mekker på et chatte-script i PHP og WML for mobiler, som jeg håper kan spare litt av kontantkortet mitt. Jeg har skrevet et chat-script i PHP og WML, men har et problem. Siden som viser selve chatten oppdateres kontinuelig etter en oppgitt tid (hvert 7. sek som standard), men av dette blir det MASSE ekstra GPRS-kostnader som gjør at jeg nesten ikke sparer noe som helst på chatten :( Går det ann og få til noe som gjør at når en ny melding postet (bruker mySQL), så oppdateres chatten automatisk? Og KUN når det kommer en ny melding...

Lenke til kommentar
Videoannonse
Annonse

I utgangspunktet ikke, siden alt som har med PHP å gjøre skjer lokalt på serveren. Dvs. ikke noe PHP forlater serveren, kun en output.

 

Du kan eventuelt bygge et script (hvis mulig) på telefonen som sjekker filen, eller du kan bare få den til å legge til nytt innhold. Hvis det finnes mulighet for at den kun legger til nytt innhold, kan du få PHP til å slette gammel innhold når du har hentet det en gang.

Lenke til kommentar

Kom på en ide! Mobiler lagrer de siste sidene den har vært inne på (som f.eks. Internet Explorer). Si at jeg da har en side som viser selve chatten. Så hver 10. sek så går denne siden til en side (oppdater.php) som ser om det har kommet en ny post. Hvis det er en ny post, blir brukeren sendt til chat.php?id=756453 (NYTT tilfeldig nummer, fordi mobiler oppfatter f.eks. chat.php?id=756453 og chat.php?id=163345 som forskjellige sider).

 

chat.php?id=665432 ->

 

oppdater.php ->

 

Hvis NY post: chat.php?id=886645

Hvis IKKE ny post: chat.php?id=665432 (samme som den kom fra)

 

Høres dette helt teit ut, eller kan det brukes? :roll:

Endret av simenss
Lenke til kommentar

Siden PHP er server-side så kan du ikke gjøre noe på klient-siden fra PHP. Dette må gjøres fra det språket som klienten leser, ikke fra språket som sender det klienten din får lese. På grunn av akkurat dette med GPRS kostnader pleier slike Chat's for mobiler å bli skrevet i J2ME(Java) eller Native mobil-språk feks, Hvor du kan lage et lurt system der du bare mottar tekst hvis server returnerer "true" om det er kommet noe ny tekst i databasen feks. Det finnes jo utallige måter å gjøre dette på selvfølgelig. Og de fleste løsninger har blitt brukt før. Hvis du skal gjøre dette i WML så er kanskje en manuell refresh en helt grei løsning? Har ikke brukt WML noe særlig så jeg vet ikke hvilke muligheter du har for sånt der. Men jeg tviler egentlig på at du finner noen særlig gode WML-løsninger på problemet ditt...

 

Mvh Eivind

Endret av EivindM
Lenke til kommentar
Mvh Eivind

Takk for godt svar! Men vet du om noen J2ME programmer som fungerer slik? Og vet du noen ting om programmering av slike programmer? Jeg har lett mye før etter programmer for å utvikle spill/programmer for mobiler (J2ME), men har aldri funnet noe...

Lenke til kommentar

Hva med å la PHP "henge" til det kommer ny data? Slik at når du går inn på siden, så gir ikke PHP output før det kommer data (lag ei løkke og bruk sleep() eller noe slikt)

 

Et alternativ kan være å stoppe scriptet med exit før det sender noe data (eller evt. bare "ingen nye innlegg" eller en kort melding) hvis det ikke finnes noe nytt.

Lenke til kommentar
Hva med å la PHP "henge" til det kommer ny data? Slik at når du går inn på siden, så gir ikke PHP output før det kommer data (lag ei løkke og bruk sleep() eller noe slikt)

 

Et alternativ kan være å stoppe scriptet med exit før det sender noe data (eller evt. bare "ingen nye innlegg" eller en kort melding) hvis det ikke finnes noe nytt.

sleep()? :dontgetit:

Lenke til kommentar
Hva med å la PHP "henge" til det kommer ny data? Slik at når du går inn på siden, så gir ikke PHP output før det kommer data (lag ei løkke og bruk sleep() eller noe slikt)

 

Dette tviler jeg på at er en god løsning, men hvis det skulle gjøres så må timout settes til "uendelig", og data må flushes for hvert nytt innlegg man finner i "loopen". Jeg tviler på at wap browsere vil like dette.. Men jeg har ikke testet det, så det kan jeg ikke si sikkert.

 

Mvh Eivind

Lenke til kommentar
Mvh Eivind

Takk for godt svar! Men vet du om noen J2ME programmer som fungerer slik? Og vet du noen ting om programmering av slike programmer? Jeg har lett mye før etter programmer for å utvikle spill/programmer for mobiler (J2ME), men har aldri funnet noe...

En slik "Chat software" burde ikke være noe problem å skrive. Du kan faktisk skrive det meste i PHP hvis det er det som er "hovedspråket" ditt. Lage et enkelt interface i Java som jobber mot og parser PHP scripts som spyr ut enkle tekst-formater. Jeg vet ikke om applikasjoner som fungerer på akkurat den måten, men det er mulig du finner noe liknende hvis du søker litt.

 

På bunnen her finner du et lite innlegg jeg skrev om J2ME programmering for noen dager siden: http://forum.sourcecode.no/index.php?showtopic=203140&hl=#

 

http://www.google.com/search?q=J2ME+game+p...amming+tutorial <- på google finner du mange gode(og dårlige) tutorials om både spill og applikasjons programmering for mobiler. Det er bare å være litt smart med søkene :)

 

Mvh Eivind

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...