Avatar billede jammerlab Nybegynder
15. august 2008 - 20:34 Der er 5 kommentarer og
2 løsninger

Checkbox hvordan er det nu

Hej derude... kan simpelthen ikke huske hvordan man gør det her... har en lang række brugere som bliver hentet med en while loop... og for hvert navn er der 7 checkboxes... hvordan er det nu man for det hele opdateret efter hvad der hakkes af og beholder hakkene hvis de allerede er valgt for brugerne...

----------------

$query = mysql_query("select * FROM wow_users WHERE guild = '0' ORDER BY ID DESC") or die(mysql_error());
while($row = mysql_fetch_array($query)) {
echo "
<tr>
<td>
<span class=\"text1\">$row[user]</span>
</td>
<td><span class=\"$row[type]\">$row[type]</span></td>
<td><input type=\"radio\" name=\"check[]\" value=\"Initiate\"></td>
<td><input type=\"radio\" name=\"check[]\" value=\"Social Member\"></td>
<td><input type=\"radio\" name=\"check[]\" value=\"Raid Pool\"></td>
<td><input type=\"radio\" name=\"check[]\" value=\"Member\"></td>
<td><input type=\"radio\" name=\"check[]\" value=\"0\"></td>
</tr>";
}
Avatar billede jakobdo Ekspert
15. august 2008 - 22:56 #1
Du skal jo lave et tjek, om værdien er sat eller ej.
Ligeledes skal du have en UPDATE, så du kan opdatere med den nye værdi.
Avatar billede victor22 Nybegynder
16. august 2008 - 02:33 #2
Først skal du check -- hvis brugeren har i det hele taget valgt noget. og til dette skal du give dine checkbox nogen værdier i boolean = sand eller falsk.. og bruge så Checked som følgende.

<form action='#' method='POST'>

<input type='checkbox' value='checkbox' name='checkbox'>

<input type='submit' value='Hej' name='submit'>

</form>

<?php

if ($_POST[submit]) {

if (empty($_POST[checkbox])) {

echo "Du har ikke hakket checkboxen af :(";

} else {

echo "Du har hakket checkboxen af :)";

}

}

?>
Den der checker er nu:
<?php

if(empty($_POST[checket])) { // Eller if($_POST[checket] == "") {

echo "UHU?? Du mangler noget?";

}else{

echo "UHU?? Du mangler IKKE noget?";

}

?>

Hvis du har 1 eller 20 checksbox er proceduren det sammen. for hver eneste skal du tildele en værdi - betingelse der skal udføles.. hvis checked er krydset -- så skal det sker noget.

efter den del -- skal du bruge en Insert i din mYSQL FOR AT OPDATERE TABLE Med de nutidig værdier der er så valg af brugere.

Håber det gav mening. ellers kan du finde en lignede eksempel hvor jeg tror på du kan finde inspirationen. http://www.eksperten.dk/spm/818365
Avatar billede jammerlab Nybegynder
16. august 2008 - 14:56 #3
Ja er med på hvordan man tjekker men kan ikke få det strikket sammen... her er lidt kode hvor jeg har prøvet og fejlet :)

if($update) {
$query = mysql_query("select * FROM wow_users WHERE guild = '0' ORDER BY ID DESC") or die(mysql_error());
while($row = mysql_fetch_array($query)) {
$a = $row[id];
mysql_query("update wow_users set guild='check[$a]' WHERE id='$row[id]'")or die (mysql_error());
}
}

-----------

<?
$query = mysql_query("select * FROM wow_users WHERE guild = '0' ORDER BY ID DESC") or die(mysql_error());
while($row = mysql_fetch_array($query)) {
echo "
<tr>
<td>
<span class=\"text1\">$row[user]</span>
</td>
<td><span class=\"$row[type]\">$row[type]</span></td>
<td><input type=\"radio\" name=\"check[]\" value=\"Initiate\"></td>
<td><input type=\"radio\" name=\"check[]\" value=\"Social Member\"></td>
<td><input type=\"radio\" name=\"check[]\" value=\"Raid Pool\"></td>
<td><input type=\"radio\" name=\"check[]\" value=\"Member\"></td>
<td><input type=\"radio\" name=\"check[]\" value=\"0\"></td>
</tr>";
}
?>
Avatar billede showsource Seniormester
16. august 2008 - 15:40 #4
Først:

<?php
$query = mysql_query("select `ID`, `type`, `user` FROM `wow_users` WHERE `guild` = '0' ORDER BY `ID` DESC") or die(mysql_error());
while($row = mysql_fetch_assoc($query)) {
echo "
<tr>
<td>
<span class=\"text1\">".$row["user"]."</span>
</td>
<td><span class=\"$row[type]\">".$row["type"]."</span></td>
<td><input type=\"radio\" name=\"check[".$row["ID"]."]\" value=\"Initiate\"></td>
<td><input type=\"radio\" name=\"check[".$row["ID"]."]\" value=\"Social Member\"></td>
<td><input type=\"radio\" name=\"check[".$row["ID"]."]\" value=\"Raid Pool\"></td>
<td><input type=\"radio\" name=\"check[".$row["ID"]."]\" value=\"Member\"></td>
<td><input type=\"radio\" name=\"check[".$row["ID"]."]\" value=\"0\"></td>
</tr>";
}
?>


og så

if(isset($_POST["check"]) && is_array($_POST["check"])) {

    foreach($_POST["check"] as $key => $value) {
    mysql_query("UPDATE `wow_users` SET `guild` = '".$value."' WHERE `ID` = ".(int)$key."");
    }

}

så'n ca. :O)
Avatar billede jammerlab Nybegynder
22. august 2008 - 15:03 #5
Showsource> det ser ud til at fungere helt fint :o)

smit et svar tak
Avatar billede jammerlab Nybegynder
24. august 2008 - 19:55 #6
?
Avatar billede showsource Seniormester
14. september 2008 - 21:12 #7
Ok
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester