Autor Zpráva
Noname
Profil *
Potřebuji vytvořit formulář, přes který přejmenuje uživatel sveho psa. Všem moc děkuji :)
<?php
header('Content-Type: text/html; charset=UTF-8');
if(isset($_POST['new_dog_name']))
{
		$name = removeHTMLComplete(stripslashes($_POST['new_dog_name']));
	
		// minimalni pocet znaku
		if(strlen($name) < 3){
			echo"Minimalni pocet znaku jsou 3";
		}
		// maximalni pocet znaku
		elseif(strlen($name) > 30){
			echo"Maximalni pocet znaku je 30";
		}
		// Prejmenovani
		else {
			//...
mysql_query("UPDATE ". DOG_TABLE ." SET dog_name = '". $name ."' WHERE dog_id = ". $_SESSION['this_dog'])OR die(mysql_error());
$_SESSION['dog_data'][0] = $name;


echo $name;

		}
}
?>
panther
Profil
Noname:
a kde je problém? Máš problém s formulářem, ale dáš sem kus zpracovávajícího PHP. Co po nás tedy chceš? Jestli napsat jednoduchý HTML formulář, to bys zvlásnout měl, ne?
Noname
Profil *
Já do formulářů vůbec nejsem

<?php
header('Content-Type: text/html; charset=UTF-8');
if(isset($_POST['new_dog_name']))
{
        $name = removeHTMLComplete(stripslashes($_POST['new_dog_name']));
    
        // minimalni pocet znaku
        if(strlen($name) < 3){
            echo"Minimalni pocet znaku jsou 3";
        }
        // maximalni pocet znaku
        elseif(strlen($name) > 30){
            echo"Maximalni pocet znaku je 30";
        }
        // Prejmenovani
        else {
            //...
mysql_query("UPDATE ". DOG_TABLE ." SET dog_name = '". $name ."' WHERE dog_id = ". $_SESSION['this_dog'])OR die(mysql_error());
$_SESSION['dog_data'][0] = $name;


echo "
<input type=\"text\" name=\"nick\" value=\"". $name ."\"></td></tr>"

        }
}
?>


Mohlo by to být nějak tak?
panther
Profil
Noname:
každý formulář nějak začíná a nějak končí (form), obsahuje různé tagy, to si nastuduj na JPW.

na 5. řádku bereš proměnnou $_POST['new_dog_name'], tak v HTML musí být name toho inputu rovno new_dog_name. Základy formulářů (a HTML obecně) ti tu vysvětlovat nebudu, spíš ti jen poradím: Než si někde stáhneš nějaký kód, nejprve se zkus mu porozumět, než jej někde použiješ.
Nox
Profil
http://www.google.com/search?q=html+formul%C3%A1%C5%99e
Už od pohledu ti tam chybí něco co řekne kam se to posílá a nějaké tlačítko na odeslání, jak na to konkrétně najdeš tam
Noname
Profil *
A php script je napsán správně?
mattyZEM
Profil
Krom toho, že ti podmínka "if(strlen($name) < 3)" nebude brát 3 znaky, ale až 4, to myslím dobře je.
Noname
Profil *
Mam problem, nefunguje to. Určitě je chyba ve formulářu.
<?php
header('Content-Type: text/html; charset=UTF-8');

if(isset($_POST['new_dog_name']))
{
		$name = removeHTMLComplete(stripslashes($_POST['new_dog_name']));
	
		// minimalni pocet znaku
		if(strlen($name) < 3){
			echo"min.3znaky";
		}
		// maximalni pocet znaku
		elseif(strlen($name) > 30){
			echo"max.30znaku";
		}
		// Prejmenovani
		else {
			//...
mysql_query("UPDATE ". DOG_TABLE ." SET dog_name = '". $name ."' WHERE dog_id = ". $_SESSION['this_dog'])OR die(mysql_error());
$_SESSION['dog_data'][0] = $name;


echo $name;
}}



?>

<HTML>
<HEAD>
<TITLE>Untitled</TITLE>
<META NAME="GENERATOR" CONTENT="MAX's HTML Beauty++ 2004">
</HEAD>

<BODY>

<input type="text" name="new_dog_name" value="<?php $name ?>">
<input type="submit" name="submit"></td></tr>

</BODY>
</HTML>
SpotRudloff
Profil
Noname:
Zásadně nedoporučuji psát HTML tagy velkými písmeny, to bylo v dobách začátků internetu.
Rovněž nepiš
<?php
echo"Ahoj, Světe!";
?>


ale

<?php
echo "Ahoj, Světe!";
?>


Jelikož to napomáhá čitelnějšímu kódu.
Noname
Profil *
tak dik, ještě opravit aby to fungovalo :(
SpotRudloff
Profil
<?php
header('Content-Type: text/html; charset=UTF-8');
if(isset($_GET['new_dog_name']) AND !empty($_GET['new_dog_name']))
{
        $name = removeHTMLComplete(stripslashes($_GET['new_dog_name']));
    
        // minimalni pocet znaku
        if(strlen($name) < 3){
            echo "Minimalni pocet znaku jsou 3";
        }
        // maximalni pocet znaku
        elseif(strlen($name) > 30){
            echo "Maximalni pocet znaku je 30";
        }
        // Prejmenovani
        else {
            //...
mysql_query("UPDATE ". DOG_TABLE ." SET dog_name = '". $name ."' WHERE dog_id = '". $_SESSION['this_dog']."'") OR die(mysql_error());
$_SESSION['dog_data'][0] = $name;


echo $name;

        }
}
?>

<form action="" method="get">
<input type="text" name="new_dog_name" />
<input type="submit" value="Přejmenivat psa!" />
</form>


Vyzkoušej toto, udělal jsem tam pár změn a přidal formulář. Též jsem upravil metodu odesílání na GET, která se mi zdá trochu vhodnější, i když mnozí budou nesouhlasit. :)
Noname
Profil *
Dik moc funguje :)

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