pianoforte Skrevet 20. mars 2005 Skrevet 20. mars 2005 Holder på å lage et quiz-skript og når brukeren er ferdig ender han opp med en rekke tall for hvilke valg han har tatt, f eks: 13212 Jeg skal da sammeligne det med fasiten som er 12132 og si hvor mange riktige det ble. Hvordan kan jeg gjøre det?
ilpostino Skrevet 20. mars 2005 Skrevet 20. mars 2005 du kunne bruke ltrim for å sjekke om alle svarene er riktige. (det raskeste er jo om du putter dette i en løkke).
Loomy Skrevet 21. mars 2005 Skrevet 21. mars 2005 similar_text() er jo som skapt for dette Eksempel: <?php $riktigeSvar = "123456"; $svarFraBruker = "123999"; $poengsum = similar_text($riktiveSvar, $svarFraBruker); echo $poengsum; // skriver ut 3 ?>
ilpostino Skrevet 21. mars 2005 Skrevet 21. mars 2005 similar_text() er jo som skapt for dette Eksempel: <?php $riktigeSvar = "123456"; $svarFraBruker = "123999"; $poengsum = similar_text($riktiveSvar, $svarFraBruker); echo $poengsum; // skriver ut 3 ?> men vil denne funksjonen ta hensyn til rekkefølgen på bokstavene (det vil si svarene) i stringen eller bare sammenligner den blindt hva som er likt?
Gjest Slettet+6132 Skrevet 23. mars 2005 Skrevet 23. mars 2005 Skrev dette raskt, dette burde fungere fint. Men er kanskje ikke det beste måten å sjekke om to stringer er like på. <? $s_in = "1296431"; $s_rett = "1234567"; $s_inL = strlen($s_in); $s_rettL = strlen($s_rett); $rett = 0; if($s_inL == $s_rettL) { for($i=0;$i<$s_inL;$i++) $s_inA[$i] = substr($s_in, $i, 1); for($i=0;$i<$s_rettL;$i++) $s_rettA[$i] = substr($s_rett, $i, 1); for($u=0;$u<count($s_rettA);$u++) if($s_rettA[$u] == $s_inA[$u]) $rett += 1; $rett_pro = $rett/count($s_rettA) * 100; $rett_pro = round($rett_pro, 1); echo "Du fikk ".$rett_pro."% riktig."; } else { echo "[Feil:] Ulikt antall svar og spm :S"; } ?>
Loomy Skrevet 23. mars 2005 Skrevet 23. mars 2005 similar_text() er jo som skapt for dette Eksempel: <?php $riktigeSvar = "123456"; $svarFraBruker = "123999"; $poengsum = similar_text($riktiveSvar, $svarFraBruker); echo $poengsum; // skriver ut 3 ?> men vil denne funksjonen ta hensyn til rekkefølgen på bokstavene (det vil si svarene) i stringen eller bare sammenligner den blindt hva som er likt? Den skal ta hensyn til rekkefølgen ja. Testet ColaKanne sitt script nå, og det fungerte også fint
Gilbert Skrevet 23. mars 2005 Skrevet 23. mars 2005 By passing a reference as third argument, similar_text() will calculate the similarity in percent for you. It returns the number of matching chars in both strings.
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å