Autor Zpráva
HGD
Profil
pomohli byste mi někdo, jak udělat formulář, kde by byly nějaký hodnoty (0,1,2), jednu bych si vybral, přes $_POST by se to odeslalo do formuláře a hodnota by se uložila do DB kde je nastavená tabulka:
`prava` TINYINT NOT NULL ,
WertriK
Profil
http://www.jakpsatweb.cz/formulare.html
http://www.jakpsatweb.cz/php/moznosti-php.html
HGD
Profil
z toho sem se nedozvěděl to, co potřebuju, protože ať použiju jakýkoliv vstupní pole ve formuláři, tak do DB se mi uloží 2ka sama od sebe, a ne to, co sem zadal ve formuláři
Aleš Janda
Profil
Tak máš holt špatně formulář nebo kód. Hoď to sem, jinak ti nikdo asi víc neporadí ;-)
HGD
Profil
reg.php
<form action="./registrace.php" method="post">

<input type="hidden" name="sent" value=""/>
<table>
<tr>
<td width="160" height="30"><img src="../style/arrow.png">Registrované jméno:</td>
<td width="200" height="20">
<input type="text" name="jmeno" size="35"></td>
</tr>
<tr>
<td width="160" height="30"><img src="../style/arrow.png">Heslo:</td>
<td width="200" height="20">
<input type="text" name="heslo" size="35"></td>
</tr>
<tr>
<td width="160" height="30"><img src="../style/arrow.png">Heslo (znovu):</td>
<td width="200" height="20">
<input type="text" name="heslo_znovu" size="35"></td>
</tr>
<tr>
<td width="160" height="30"><img src="../style/arrow.png">E-mail:</td>
<td width="200" height="20">
<input type="text" name="mail" size="35"></td>
</tr>
<tr>
<td width="160" height="30"><img src="../style/arrow.png">Práva:</td>
<td width="200" height="20">
<input type="text" name="prava" size="10"></td>
</tr>
<tr>
<td width="160" height="30"></td>
<td width="200" height="20">
<input type="submit" value="Registrovat" class="submit"></td>
</tr>
</table>
</form>


registrace.php
<?php

ob_start(); // cachujeme vystup
if(isset($_POST['sent'])){ // pokud byl odeslan formular pokracuj timto
$jmeno=trim($_POST['jmeno']);
$heslo1=$_POST['heslo'];
$heslo2=$_POST['heslo_znovu'];
$mail=trim($_POST['mail']);
$prava=($_POST['prava']);
if($jmeno=="" or $heslo1==""){ // pokud nebylo vyplněno něco z toho, co je povinné, dáme vědět a skript ukončíme
echo "Nebyly vyplněny všechny povinné údaje!";
}else{ // povinné udaje vyplněny vsechny
require "./config.php"; // pripojime se k databazi
$PocetStejnych=mysql_result(mysql_query("SELECT COUNT(*) FROM `$db_tabulka` WHERE `jmeno`='$jmeno' OR `mail`='$mail'"),0);
if($PocetStejnych!=0){ // pokud v db je jiz takove jmeno nebo heslo...
header ("location: ./index.php?keeper=reg&newuser=data");
}elseif($heslo1 != $heslo2){ // pokud se hesla nerovnají
header ("location: ./index.php?keeper=reg&newuser=hesla");
}else{ // hesla se shoduji, vlozime tedy data do databaze
$heslo=md5($heslo1); // zahashujeme heslo

$VlozData=mysql_query("INSERT INTO $db_tabulka VALUES ('', '$jmeno', '$heslo', '$mail', '$prava')") or die (mysql_error());
// Vlozim do tabulky hodnoty - prvni je ID - nevyplnim, tvori se samo.
// Jako posledni prava uzivatele.
header ("location: ./index.php?keeper=reg&newuser=ok");
}
}
}else{
header ("location: ./index.php?keeper=reg&newuser=ko");
}
ob_end_flush();
?>


databáze
CREATE TABLE `users` (

`id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY ,
`jmeno` VARCHAR( 32 ) NOT NULL ,
`heslo` VARCHAR( 32 ) NOT NULL ,
`mail` VARCHAR( 64 ) NOT NULL ,
`prava` TINYINT NOT NULL ,
UNIQUE (`jmeno` ,`mail` )
)
Toto téma je uzamčeno. Odpověď nelze zaslat.

0