Autor Zpráva
l337
Profil *
Ahoj, už půl hodiny řeším úpravu práv v databázi, volá se to zavoláním ?id= .. , zobrazí to možnosti a pak podle výběru uloží číslo 0 / 1 / 2 do DB, jenže mi to ty údaje ani nezmění, ale ani nevypíše jméno uživatele. Prosím o pomoc, koukám na to už hodinu.
<?php
include "hlavicka.php";
$id = $_GET['id'];
if(intval($id)) {
if($_SESSION['Prava'] > "1") {
$query = mysql_query("SELECT * FROM `registrace` WHERE `id` = '$id'");
while($vysledek = mysql_fetch_array($query));
if($vysledek['Prava'] == "1") {
$admin = "checked=\"checked\"";
}
elseif($vysledek['Prava'] == "0") {
$admin = "checked=\"checked\"";
}
elseif($vysledek['Prava'] == "2") {
$admin = "checked=\"checked\"";
}
else {
$admin = "";
}
echo "<form method=\"post\">";
echo "Jméno:". $vysledek['nick'] ."<br>";
echo "<input type=\"radio\" name=\"prava\" value=\"0\" ".$admin.">Bežný uživatel <br>";
echo "<input type=\"radio\" name=\"prava\" value=\"1\" ".$admin.">Redaktor <br>";
echo "<input type=\"radio\" name=\"prava\" value=\"2\" ".$admin.">Super admin <br>";
echo "<input type=\"submit\" value=\"Upravit\"> <br>";
echo "</form>";
if($_POST) {
$prava = $_POST['prava'];
$id=$_POST['id'];
$sql = "UPDATE `3630-beta`.`registrace` SET `prava` = '$prava' WHERE `registrace`.`id` = '$id'";
if($sql == TRUE) {
echo "Upraveno!";
}
}
}
}
?>
<?php include "paticka.html"; ?>
fajzen
Profil
l337:
na riadok 6 si daj
$query = mysql_query("SELECT * FROM `registrace` WHERE `id` = '$id'") or die(mysql_error());
a uvidíš, či vypíše MySQL nejakú chybu (tipujem, že hej)

Inak,
1. prečo dávaš čísla do úvodzoviek
2. myslím, že to s tým určením predvoleného radia nebude fungovať tak, ako chceš...
fmedic
Profil *
Vyřešeno, chyběly mu tam {} za while...

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0