Knebba Skrevet 21. februar 2006 Del Skrevet 21. februar 2006 (endret) Holder på å lære meg å lage egne funksjoner nå. <?php function farlig($input) { preg_match('/^[a-zæøåÆØÅ0-9!\?\s\.\-]+$/i', $input); } if (!farlig($navn)){ echo "Ugyldige tegn i navn."; } ?> denne gir feil uansett.. er det ikke mulig å bruke ! på egne funksjoner? Endret 21. februar 2006 av kennteh Lenke til kommentar https://www.diskusjon.no/topic/541418-functionfarlig-virker-ikke/
Knebba Skrevet 21. februar 2006 Forfatter Del Skrevet 21. februar 2006 fikk ordnet det =) <?php function farlig($input) { if (preg_match('/^[a-zæøåÆØÅ0-9!\?\s\.\-]+$/i', $input)){ return $input = true;} } if (farlig($navn) == false){ echo "Ugyldige tegn i navn."; } else{ echo "Videre!!"; } ?> Lenke til kommentar https://www.diskusjon.no/topic/541418-functionfarlig-virker-ikke/#findComment-5640618
Torbjørn Skrevet 21. februar 2006 Del Skrevet 21. februar 2006 hvorfor setter du return $input = true og ikke bare return true? hvorfor trenger du å endre denne variabelen som det siste du gjør i funksjonen? Det går fint å sette ! foran alle funksjoner. ! er en logisk operator. Har du ellers slått opp manualsiden for preg_match og sett hva den returnerer? Lenke til kommentar https://www.diskusjon.no/topic/541418-functionfarlig-virker-ikke/#findComment-5640756
Knebba Skrevet 21. februar 2006 Forfatter Del Skrevet 21. februar 2006 fordi jeg just har lært det og ikke visste det kunne skrives på den måten Lenke til kommentar https://www.diskusjon.no/topic/541418-functionfarlig-virker-ikke/#findComment-5641103
dabear Skrevet 21. februar 2006 Del Skrevet 21. februar 2006 Altså å kjøre slik kode er bortkasta: if(true) return $noe =true; Da kjører du heller return $noe; Så i ditt eksempel: function dangerous($input) { return (preg_match('/^[a-zæøåÆØÅ0-9!\?\s\.\-]+$/i', $input)); } og en ting;navn skal uten unntak være engelske. Lenke til kommentar https://www.diskusjon.no/topic/541418-functionfarlig-virker-ikke/#findComment-5641165
Knebba Skrevet 21. februar 2006 Forfatter Del Skrevet 21. februar 2006 takk for hjelp =) men så har jeg et lite spørsmål til.. i gjesteboka så lagrer jeg ip og et timestamp når brukeren legger inn en hilsen. hvordan kan jeg få sjekket opp mot det når det blir lagret et nytt innlegg? eventuelt slik at bare de fem siste innleggene blir sjekket, så det ikke tar for lang tid for mysql å sjekke gjennom? Lenke til kommentar https://www.diskusjon.no/topic/541418-functionfarlig-virker-ikke/#findComment-5641209
Torbjørn Skrevet 21. februar 2006 Del Skrevet 21. februar 2006 hvorfor ønsker du å sjekke et nytt innlegg opp mot tiden for eksisterende innlegg? Lenke til kommentar https://www.diskusjon.no/topic/541418-functionfarlig-virker-ikke/#findComment-5641283
LateFot Skrevet 21. februar 2006 Del Skrevet 21. februar 2006 quote Dabear "og en ting;navn skal uten unntak være engelske." Det står ingen plass at funksjons navn, variabler etc. skal være engelsk. Om det blir lettere for deg å bruke norske navn, da gjør du det. det eneste du trenger å tenke på er bruk av ÆØÅ. en enkel løsning er å bruke ae = æ, o = ø, aa = å. Skal du derimot jobbe sammen med flere kodere fra forskjellige land, kan det være en ide å bruke engelske navn. Lenke til kommentar https://www.diskusjon.no/topic/541418-functionfarlig-virker-ikke/#findComment-5641360
Knebba Skrevet 21. februar 2006 Forfatter Del Skrevet 21. februar 2006 hvorfor ønsker du å sjekke et nytt innlegg opp mot tiden for eksisterende innlegg? 5641283[/snapback] kanskje det var dårlig forklart, men mente som et flood filter Lenke til kommentar https://www.diskusjon.no/topic/541418-functionfarlig-virker-ikke/#findComment-5641418
Torbjørn Skrevet 21. februar 2006 Del Skrevet 21. februar 2006 ok, samme IP skal ikke få poste mer enn f.eks 1 gang hvert 10. minutt? Lenke til kommentar https://www.diskusjon.no/topic/541418-functionfarlig-virker-ikke/#findComment-5641429
Knebba Skrevet 21. februar 2006 Forfatter Del Skrevet 21. februar 2006 ja, noe sånt.. fant på en nå.. men da sperrer den ipen for alltid. ikke helt ok =) Lenke til kommentar https://www.diskusjon.no/topic/541418-functionfarlig-virker-ikke/#findComment-5641582
NH Skrevet 21. februar 2006 Del Skrevet 21. februar 2006 1:lagre brukerens ip i databasen ved posting av nytt innlegg. 2:Lagre også med time() når brukeren poster(i egen kolonne selfølgelig) 3: Ved posting hent ut siste rekke fra ipn. 4: hvis tid_fra_db + 900 > time(), la han poste, hvis ikke send ham error... Lenke til kommentar https://www.diskusjon.no/topic/541418-functionfarlig-virker-ikke/#findComment-5641704
Torbjørn Skrevet 21. februar 2006 Del Skrevet 21. februar 2006 hvorfor ikke bruke mysql sine datofunksjoner og kolonnetypen datetime? Lenke til kommentar https://www.diskusjon.no/topic/541418-functionfarlig-virker-ikke/#findComment-5641833
Knebba Skrevet 21. februar 2006 Forfatter Del Skrevet 21. februar 2006 $tiden = time(); $ip = $_SERVER["REMOTE_ADDR"]; $queryshiit = "SELECT * FROM $tabell WHERE ip='$ip'"; $shiit = mysql_query($queryshiit); $gjest = mysql_fetch_array($shiit); $tid = $gjest[tid] + 900; if ($tid > $tiden){ $query = "INSERT INTO $tabell (navn, melding, ip, tid) VALUES ('$navn', '$melding', '$ip', '$tiden')"; $result = mysql_query($query); }else{echo "Du må vente bittegranne!";} slik? det funker ikke .. Lenke til kommentar https://www.diskusjon.no/topic/541418-functionfarlig-virker-ikke/#findComment-5641868
NH Skrevet 21. februar 2006 Del Skrevet 21. februar 2006 (endret) gjerne bruke mysql sine, men ikke datetime. tragisk i dette tilfellet (dessuten er timestamp my lettere jobbe med enn datetime) <?php $ip = $_SERVER['REMOTE_ADDR']; $sql = sprintf("SELECT tid FROM %s WHERE tid+900 > CURRENT_TIMESTAMP() AND ip='%s' LIMIT 1", $tabell, $ip); $result = mysql_query($sql); if (mysql_num_rows($result) == 0){ $query = "INSERT INTO $tabell (navn, melding, ip, tid) VALUES ('$navn', '$melding', '$ip', '$tiden')"; $result = mysql_query($query); } else{ echo "Du må vente bittegranne!"; } ?> sett kolonnen med tiden som TIMESTAMP og default som CURRENT_TIMESTAMP() så lagrer tiden seg automatisk Endret 21. februar 2006 av NH Lenke til kommentar https://www.diskusjon.no/topic/541418-functionfarlig-virker-ikke/#findComment-5641879
Anbefalte innlegg
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 kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå