08. august 2008 - 20:52
Der er
23 kommentarer og 1 løsning
Sætte tal op i forskellig rækkefølge
Hej Hvis jeg har tre tal: $forkert1 $forkert2 $resultat Disse vil jeg gerne have outputtet, så de bliver stillet op i forskellige rækkefølger hver gang (man skal svare på et regnestykke), sådan at det jo ikke altid er resultatet der står i midten f.eks. Hvordan kan jeg gøre sådan, helst i php? //cot
Annonceindlæg tema
Cloud & AI
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
08. august 2008 - 21:17
#1
$data = array('input1','input2','input3'); shuffle($data); foreach($data AS $input){ echo $input . '<br />'; }
08. august 2008 - 21:21
#2
kan man gøre det med javascrip, sorry men, det ville være rart lige at se de to forskellige ting, hvad der vil passe bedst ind i min løsning :)
08. august 2008 - 21:40
#3
08. august 2008 - 22:01
#4
Det virker ikk for mig, da det er javascript, der er inde i variablen :(
08. august 2008 - 22:32
#5
Så brug php metoden.
09. august 2008 - 08:04
#6
Men hvis jeg bare skriver det ind der ved input1,2,3 så kan den ikke finde ud af det, da javascriptet indeholder '' og så bliver det jo stoppet der :S
09. august 2008 - 10:13
#7
Så smid " omkring " Du kan jo lave: $data = array('he\'s'); eller $data = array("he's");
09. august 2008 - 10:41
#8
Okay, det med he\s der forstod jeg ikke lige... Det er det her kode jeg skal have som input: <a href="#" onclick="java script: document.getElementById('textfield3').value = '<?php echo $resultat; ?>';"><img border="0" onclick="java script: this.border='2px'; java script: this.borderColor='#000000';" ALT="<?php echo $resultat; ?>" /></a> Hvordan kan jeg få det ind?
09. august 2008 - 10:47
#9
Du kan prøve (utestet): function addslashesARRAY($value) { $value = is_array($value) ? array_map('addslashesARRAY', $value) : addslashes($value); return $value; } $array = array('input1','input2','input3'); $data = addslashesARRAY($array); shuffle($data); foreach($data AS $input){ echo $input . '<br />'; }
09. august 2008 - 11:03
#10
måske kan function addslashesARRAY($value) { $value = is_array($value) ? array_map('addslashesARRAY', $value) : addslashes($value); return $value; } $array = array('input1','input2','input3'); $data = addslashesARRAY($array); erstattes af $data = array_map( "addslashes", $array );
09. august 2008 - 11:52
#11
Men jeg forstår stadigvæk ikke helt... Skal jeg bare bytte input1 ud med: <a href="#" onclick="java script: document.getElementById('textfield3').value = '<?php echo $resultat; ?>';"><img border="0" onclick="java script: this.border='2px'; java script: this.borderColor='#000000';" ALT="<?php echo $resultat; ?>" /></a> Og så virker det?
09. august 2008 - 18:46
#12
Prøv at vis de info du gerne vil have puttet ind og udskrevet random. Så giver vi dig et færdigt resultat. Det virker som om vi går i ring.
09. august 2008 - 20:58
#13
Min kode er her: <?php $act = $_GET['act']; if ($act == 'sv') { // 1-start $nummer1 = $_POST['nummer1']; $nummer2 = $_POST['nummer2']; $forkert1 = $_POST['forkert1']; $forkert2 = $_POST['forkert2']; $svar = $_POST['svar']; $resultat = $_POST['resultat']; if ($svar==$resultat){ // 2-start echo "Rigtigt!"; }// 2-slut if ($svar!=$resultat){ // 3-start echo "Forkert!"; }// 3-slut } // 1-slut else { //4-start $nummer1 = rand(1,9);//Først nummer der skal lægges samme med nummer 2 $nummer2 = rand(3,9);//Andet nummer der skal lægges samme med nummer 1 $resultat = ($nummer1 + $nummer2); //Resultatet af de to numre lagt sammen $forkert1 = rand(4,18); $forkert2 = rand(4,18); echo"".$nummer1." + ".$nummer2." = <br/>"; ?> <a href="#" onclick="java script: document.getElementById('textfield3').value = '<?php echo $resultat; ?>';"><img border="0" onclick="java script: this.border='2px'; java script: this.borderColor='#000000';" ALT="<?php echo $resultat; ?>" /></a> <input type="image" onclick="java script: document.getElementById('textfield3').value = '<?php echo $forkert1; ?>';" ALT="<?php echo $forkert1; ?>"/> <input type="image" onclick="java script: document.getElementById('textfield3').value = '<?php echo $forkert1; ?>';" ALT="<?php echo $forkert2; ?>"/> <?php echo'<form method="post" action="stykke.php?act=sv"> <input type="hidden" value="'.$nummer1.'" name="nummer1" id="textfield1" /> <input type="hidden" value="'.$nummer2.'" name="nummer2" id="textfield2" /> <input type="hidden" value="'.$forkert1.'" name="nummer1" id="textfield5" /> <input type="hidden" value="'.$forkert2.'" name="nummer2" id="textfield6" /> <input type="hidden" value="" name="svar" id="textfield3" /> <input type="hidden" value="'.$resultat.'" name="resultat" id="textfield4" /> <INPUT TYPE="image" SRC="pil.gif" BORDER="0" ALT="Svar"> </form>'; } //4-slut ?> Er lidt dum i dag, så fatter ikke lige hvad i snakker om :$ heh
09. august 2008 - 20:59
#14
Btw. det er det her, der skal laves som random: ... <a href="#" onclick="java script: document.getElementById('textfield3').value = '<?php echo $resultat; ?>';"><img border="0" onclick="java script: this.border='2px'; java script: this.borderColor='#000000';" ALT="<?php echo $resultat; ?>" /></a> <input type="image" onclick="java script: document.getElementById('textfield3').value = '<?php echo $forkert1; ?>';" ALT="<?php echo $forkert1; ?>"/> <input type="image" onclick="java script: document.getElementById('textfield3').value = '<?php echo $forkert1; ?>';" ALT="<?php echo $forkert2; ?>"/> ...
09. august 2008 - 21:47
#15
Du bør kunne bruge: $input1 = '<a href="#" onclick="java script: document.getElementById(\'textfield3\').value = \''.$resultat.'\';"><img border="0" onclick="java script: this.border=\'2px\'; java script: this.borderColor=\'#000000\';" ALT="'.$resultat.'" /></a>'; $input2 = '<input type="image" onclick="java script: document.getElementById(\'textfield3\').value = \''.$forkert1.'\';" ALT="'.$forkert1.'" />'; $input3 = '<input type="image" onclick="java script: document.getElementById(\'textfield3\').value = \''.$forkert2.'\';" ALT="'.$forkert2.'" />'; $data = array($input1,$input2,$input3); shuffle($data); foreach($data AS $input){ echo $input . '<br />'; }
09. august 2008 - 21:55
#16
ok, takker, jeg tester det lige :)
09. august 2008 - 22:00
#17
desværre: Kode: ... $input1 = '<a href="#" onclick="java script: document.getElementById(\'textfield3\').value = \''.$resultat.'\';"><img border="0" onclick="java script: this.border=\'2px\'; java script: this.borderColor=\'#000000\';" ALT="'.$resultat.'" /></a>'; $input2 = '<a href="#" onclick="java script: document.getElementById(\'textfield3\').value = \''.$forkerk1.'\';"><img border="0" onclick="java script: this.border=\'2px\'; java script: this.borderColor=\'#000000\';" ALT="'.$forkert1.'" /></a>'; $input3 = '<a href="#" onclick="java script: document.getElementById(\'textfield3\').value = \''.$forkerk2.'\';"><img border="0" onclick="java script: this.border=\'2px\'; java script: this.borderColor=\'#000000\';" ALT="'.$forkert2.'" /></a>'; $data = array($input1,$input2,$input3); shuffle($data); foreach($data AS $input){ echo $input . ' '; } ... Output: $input1 = ''.$resultat.''; $input2 = ''.$forkert1.''; $input3 = ''.$forkert2.'';
09. august 2008 - 22:03
#18
Omg, jeg ser nu fejlen, jeg har vidst over hovedet ikke øjnene med mig :S Jeg var komme til at sætte et: ?> Så det slet ikke var en del af koden! :S sry
09. august 2008 - 22:12
#19
smid et svar :)
09. august 2008 - 22:17
#20
<ole> Det giver ikke rigtig mening at bruge JavaScript pseudoprotokollen i en event handler, så du bør nok slette alle dine 'java script:' =) $input3 = '<a href="#" onclick="document.getElementById(\'textfield3\').value = \''.$forkerk2.'\';"><img border="0" onclick="this.border=\'2px\'; this.borderColor=\'#000000\';" /mvh </bole>
09. august 2008 - 22:23
#21
hehe ok, takker :)
09. august 2008 - 22:24
#22
Svar!
09. august 2008 - 22:25
#23
Takker for hjælpen! :)
09. august 2008 - 22:26
#24
Takker for point.
Vi tilbyder markedets bedste kurser inden for webudvikling