Gå til innhold

Feil med if-streng?


Gjest Slettet+6132

Anbefalte innlegg

Gjest Slettet+6132

Hei, har sittet nå hele kvelden og slitt med gjesteboka mi.

 

Slik ser filen ut:

*fjernet*

 

Når siden lastes så vises selvsagt "Ingen data ble lagt til."

MEN, når jeg skriver noe i inputene (i alle), og trykker "Send", så får jeg også "Ingen data ble lagt til.", som betyr at IFen har hoppet videre til else. Hvorfor det? Scriptet fungerte tidligere i dag, jeg har sittet og fikset på det så jeg kan ha kødda til noe.

Endret av Slettet+6132
Lenke til kommentar
Videoannonse
Annonse

Nå har ikke jeg sett så nøye på koden, men prøv å bytte ut:

// Putter data inn i filen
fwrite($fh, "$nick;");
fwrite($fh, "$navn;");
fwrite($fh, "$epost;");
fwrite($fh, "$hilsen");
fwrite($fh, "\n");

med:

// Putter data inn i filen
fwrite($fh, "$nick");
fwrite($fh, "$navn");
fwrite($fh, "$epost");
fwrite($fh, "$hilsen");
fwrite($fh, "\n");

Lenke til kommentar
Gjest Slettet+6132

Det er jo if-strengen det er noe galt med? Siden den hopper til ELSE.

EDIT: Dessuten har jeg ikke redigert på skrive-delen, den vet jeg funker. ( ";" deler opp delene, så den MÅ være med)

Endret av Slettet+6132
Lenke til kommentar

Beklager, jeg tenkte helt feil. :blush:

Men jeg tror jeg ser feilen.

Prøv å bytte ut:

// Variabler
$nick = $_GET['nick'];
$navn = $_GET['navn'];
$epost = $_GET['epost'];
$hilsen = $_GET['hilsen'];

med:

// Variabler
$nick = $_POST['nick'];
$navn = $_POST['navn'];
$epost = $_POST['epost'];
$hilsen = $_POST['hilsen'];

Lenke til kommentar
Gjest Slettet+6132

BAH! Såklart :!:

 

Rart hva 3 liter pepsi og 1liter te gjør med deg, men takk for hjelpen :p

 

EDIT: du har vel ikke peiling på hvordan jeg får sortert etter hvor i arrayet det ligger? så nå at det blir sortert etter nick. Går det feks å legge en unix-tid til når et innlegg legges inn, slik at det blir sortert vha. tid?

Endret av Slettet+6132
Lenke til kommentar
Gjest Slettet+6132
Hvis du legger til date("YmdHis"); foran på hver linje i filen din får du et tall du kan sortere på for å få innleggene i kronologisk rekkefølge.

 

 

Edit: glemte sekundene

Jeg har fikset det nå ;)

 

EDIT: Hva syntes dere? Gjestebok

Endret av Slettet+6132
Lenke til kommentar
Hvis du legger til date("YmdHis"); foran på hver linje i filen din får du et tall du kan sortere på for å få innleggene i kronologisk rekkefølge.

 

 

Edit: glemte sekundene

Hvorfor ikke bruke time() (UNIX time stamp)

Lenke til kommentar
Gjest Slettet+6132
Hvorfor ikke bruke time() (UNIX time stamp)

Slapp av, bruker $dato = date("d.m.y H:i:s", $del[0]) nå. ($del[0] er unixtiden)

Lenke til kommentar
Gjest Slettet+6132

Pen gjestebok det der, men der var noen "sikkerhetshull" noen kan utnytte for å ødelegge for deg.

 

Tenkte jeg skulle prøve den gjesteboka di nå da jeg merka at jeg ikke kunne legge til nye innlegg.

 

Noe du kan endre er vel kanskje input delen, valider den før du legger i tekstfil. Slik det er nå kan jeg skrive f.eks. '\n' som navn for å lage ett nytt innlegg. Jeg kan og skrive noen ";;;;;" for å virkelig ødelegge tekstfilen din.

Lenke til kommentar
Gjest Slettet+6132
Pen gjestebok det der, men der var noen "sikkerhetshull" noen kan utnytte for å ødelegge for deg.

 

Tenkte jeg skulle prøve den gjesteboka di nå da jeg merka at jeg ikke kunne legge til nye innlegg.

 

Noe du kan endre er vel kanskje input delen, valider den før du legger i tekstfil.  Slik det er nå kan jeg skrive f.eks. '\n' som navn for å lage ett nytt innlegg. Jeg kan og skrive noen ";;;;;" for å virkelig ødelegge tekstfilen din.

Problemet er bare at jeg ikke er noe særlig god på de der "sjekk hva som er i stringen og drep personen om det er noe ulovligt i den"-funksjonene. :p

 

EDIT: Lyst å hjelpe kanskje? :D

EDIT 2: Kom på nå at hvis det kommer fjortisser som skriver ";)" så klikker det! :ohmy:

Endret av Slettet+6132
Lenke til kommentar
Gjest Slettet+6132

Arne, hvem du nå enn er; "I know where you live! (at least your ip!)" :D

 

Faktisk, det eneste som skjer er at det etter en evt. ";" ikke kommer med.

Endret av Slettet+6132
Lenke til kommentar

Hei pepsien; Me Arne :)

 

Skulle bare teste om du hadde fikset ; i innleggene.. ikke meningen å kødde opp gjesteboka ;)

 

Anbefaler deg å bruke et annet tegn som skille tegn, eller evt replace ; med et annet tegn, f.eks ; som vil vises som ; på siden, men ikke i tekstfilen ;)

 

Kakkle (Arne)

 

EDIT Glemte at & # 59 ; (skal være uten mellomrom mellom) også selvfølgelig vil bli vist som ; i dette forumet :blush:

Endret av kakkle
Lenke til kommentar
Gjest Slettet+6132
Hei pepsien; Me Arne :)

 

Skulle bare teste om du hadde fikset ; i innleggene.. ikke meningen å kødde opp gjesteboka ;)

 

Anbefaler deg å bruke et annet tegn som skille tegn, eller evt replace ; med et annet tegn, f.eks ; som vil vises som ; på siden, men ikke i tekstfilen ;)

 

Kakkle (Arne)

Hmm, god ide.

Lenke til kommentar

I en shoutbox jeg lagde for ganske lenge siden brukte jeg | som skilletegn, og:

if (!ereg("^[^|]+$", $name) || !ereg("^[^|]+$", $url) || !ereg("^[^|]+$", $message)) die("Tegnet | er ikke tillat.");

for å hindre at folk brukte | i navn, url og melding. Funket helt fint.

Lenke til kommentar
Gjest Slettet+6132

Forresten, sort($array); sorterer fra minst til størst.

Hvordan sorterer jeg fra størst til minst?

Endret av Slettet+6132
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...