baRs Skrevet 28. november 2003 Del Skrevet 28. november 2003 Det er lenge siden jeg har stått fast, jernteppe, innen php. men en gang måtte bli den neste.. jeg har laget en side med innlogging for medlemer der medlemmene kan oppdatere profilen sin når de har logget seg inn..! Jeg har laget et skjema der nåverende informasjon om brukeren kommer opp. Man kan fylle inn ny info og trykke oppdater. det går fint. Alle feltene i dette skjemaet skal ikke være obligatorisk, kun 3. Forløpig har jeg lagt inn en if som sjekker om fornavn,etternavn og epost er skikkelig fylt ut (disse tre ER obligatorisk): if(trim($_POST['fornavn']) && trim($_POST['etternavn']) && trim($_POST['epost'])) { if(strlen($_POST['fornavn'])<=15) { if(strlen($_POST['etternavn'])<=15) Disse må altså fylles ut og bli godkjent etter kravene. NÅ kommer PROBLEMET mitt Hvordan skal jeg klare å sjekke at strlen($_POST['tlf'])==8 (som IKKE er OBLIGATORISK) hvis et medlem fyller ut telefon nr.? Hvis jeg bruker: if(strlen($_POST['tlf'])==8) { //gå videre med oppdatering } else { //feilmelding } så får brukeren feilmelding hvis ikke han har fylt ut telefonnr. DETTE FELTET SKAL JO VÆRE OBLIGATORISK!! Skjønner dere problemet mitt, utrolig irriterende å sitte fast.. Kan være jeg er ute på jordet nå, trøtt, men finner ikke ut av det.. HJELP Lenke til kommentar
hajejan Skrevet 28. november 2003 Del Skrevet 28. november 2003 if (strlen($post[tlf] != 8) {etellerannet} ?? Lenke til kommentar
baRs Skrevet 28. november 2003 Forfatter Del Skrevet 28. november 2003 if (strlen($post[tlf] != 8) {etellerannet} jaja, hvis tlf ikke er 8 tegn. men hvordan skal jeg bruke dette videre? 3 felt skal være obligatorisk, tlf skal IKKE være obligatorisk, men hvis noen fyller ut tlf må scriptet sjekke om tlf inneholder 8 tegn... hvordan løse dette? noen vise med en liten kodesnutt som omfatter akkurat dette? Lenke til kommentar
hajejan Skrevet 28. november 2003 Del Skrevet 28. november 2003 (endret) Eller mente du at telefonnummer IKKE skal være obligatorisk, men du skal sjekke om det er på 8 tegn? Hva med folk som fyller ut telefonnummer slik: 22 00 00 00? Uansett: if (strlen($post[tlf] != 8) { $telephoneerror = 1;} if (!$post[tlf]) { $telephoneerror = 0;} if ($telephoneerror) {problem!} Endret 28. november 2003 av hajejan Lenke til kommentar
baRs Skrevet 28. november 2003 Forfatter Del Skrevet 28. november 2003 Telefon nummer er IKKE obligatorisk. hvis jeg bruker denne: if (strlen($post[tlf] != 8) { $telephoneerror = 1;} vil jeg få feil hvis ikke bruker fyller ut tlf.. (eller tar jeg feil?)! Tlf skal jo være obligatorisk...! Lenke til kommentar
baRs Skrevet 28. november 2003 Forfatter Del Skrevet 28. november 2003 eller vent.. det du foreslo virker jo.. sorry. trøtt. Lenke til kommentar
hajejan Skrevet 28. november 2003 Del Skrevet 28. november 2003 (endret) // om telefonnummeret ikke er på 8 tall, sett telefonfeil til 1 if (strlen($post[tlf] != 8) { $telephoneerror = 1;} // om det ikke er noe telefonnummer i det hele tatt, fjern telefonfeil igjen if (!$post[tlf]) { $telephoneerror = 0;} Endret 28. november 2003 av hajejan Lenke til kommentar
Torbjørn Skrevet 29. november 2003 Del Skrevet 29. november 2003 eller enda mer elegant: if( $_POST['tlf'] && strlen($_POST['tlf']) != 8 && is_numeric($_POST['tlf']){ echo "du skrev et telefonnummer, og det var ugyldig"; } is_numeric kan også være greit å ha med hvis du krever 8 tall. Lenke til kommentar
baRs Skrevet 29. november 2003 Forfatter Del Skrevet 29. november 2003 bruker is_numeric(); fra før, men takk for tipset anyway.. Lenke til kommentar
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å