Autor | Zpráva | ||
---|---|---|---|
4NDR3 Profil |
#1 · Zasláno: 14. 8. 2013, 18:44:46
Ahoj, neví někdo ke mám chybu? Potřeboval bych aby když by nebyl vyplněný autor, tak aby se tam vložilo "Anonym", v MySqlu mám nastavenou defaultní hodnotu na Anonym, a když to zapíšu ručně do SQL tak to normál funguje.
<?PHP require 'connect.php'; $Autor= $_POST['jmeno']; $text = $_POST['text']; if ($text == "") { header("HTTP/1.1 301 Moved Permanently"); header("Location: http://nothall.mablog.eu/mamvpici/"); header("Connection: close"); echo "Nevyplnil jste text!"; } else { if ($Autor == " ") { mysql_query("INSERT INTO `text`(`Text`) VALUES ('$text')"); header("HTTP/1.1 301 Moved Permanently"); header("Location: http://nothall.mablog.eu/mamvpici/"); header("Connection: close"); } else { mysql_query("INSERT INTO text(Autor,Text) VALUES('$Autor','$text')"); header("HTTP/1.1 301 Moved Permanently"); header("Location: http://nothall.mablog.eu/mamvpici/"); header("Connection: close"); } } ?> |
||
jenikkozak Profil |
#2 · Zasláno: 14. 8. 2013, 18:50:32
Na 21. řádku porovnáváš, zda je autor roven mezeře, ne prázdnému řetězci.
|
||
4NDR3 Profil |
#3 · Zasláno: 14. 8. 2013, 18:52:08
Jak to tedy mám napsat? Promiň jsem začátečník jak v PHP tak v MySql :-(
|
||
Joker Profil |
#4 · Zasláno: 14. 8. 2013, 19:03:49
4NDR3:
Mezera znamená mezeru, prázdný řetězec se zapíše jako prázdný řetězec "" .
Lepší by ale bylo použít funkci empty , která je přímo stavěná na kontrolu prázdné hodnoty (jen pozor u polí, kde má projít nula, protože řetězec "0" se taky bere jako prázdná hodnota).
Situaci, kdy hodnota v $_POST nebude, by ale bylo dobré řešit i při přebírání, aby skript negeneroval zbytečně chybové hlášky. Dělalo by se to úplně obyčejně přes if (empty($_POST['jmeno'])) … else … , nebo kratší varianta téhož:
$Autor = empty($_POST['jmeno']) ? "" : $_POST['jmeno']; Ještě jedna poznámka, pokud se ve skriptu dělá přesměrování hlavičkou a skript už pak dál nemá pokračovat, je dobré na místo, kde už dál nemá pokračovat, vložit exit();
|
||
4NDR3 Profil |
#5 · Zasláno: 14. 8. 2013, 19:06:01
Oukej děkuji, vyzkouším :)
|
||
Časová prodleva: 11 let
|
0