-
Posts
51 -
Joined
-
Last visited
Content Type
Profiles
Forums
Calendar
Store
Everything posted by egoregor
-
Одна из таблиц: | Id(который не должен выводиться)| Имя | Телефон | Вот мой код, который обрабатывает введенные в форме данные и записывает их в таблицу: <?php include "includes/connect.php"; if (!$conn = mysql_connect($host, $user, $password)){ echo "<p class=\"system_message\">MySQL Error!</p>"; exit; } if (!empty($_POST["id"])) { mysql_select_db($db); $res=mysql_query("UPDATE customers SET cust_name=".trim($_POST['name']).", phone=".trim($_POST['phone']). " WHERE id = ".trim($_POST["id"])); } else { $id = "0"; $name = trim($_POST['name']); $phone= trim($_POST['phone']); if (isset($_POST['name'], $_POST['phone'])) { if ((empty($_POST['name'])) or (empty($_POST['phone']))) { echo "<p class=\"system_message\">Remained empty fields!</p>"; } else if (!is_numeric($phone)){ echo "<p class=\"system_message\">Wrong phone: Invalid characters</p>"; } else if (!is_string($name)){ echo "<p class=\"system_message\">Wrong name: Invalid characters</p>"; } else if (!preg_match("/^[a-zA-Zа-яА-Я\s]+$/u", $name)){ echo "<p class=\"system_message\">Wrong name: Invalid characters</p>"; } else if (iconv_strlen($phone)<10){ echo "<p class=\"system_message\">Wrong phone: Not 10 numbers</p>"; } else { mysql_select_db($db); $result = mysql_query("INSERT INTO customers (id, cust_name, phone) VALUES ('$id', '$name', '$phone')"); if ($result== 'true') {echo "<p class=\"system_message\">The data added to the seller</p>";} else {echo "<p class=\"system_message\">The data vendor is not added</p>";} } echo '<hr>'; }} mysql_close($connect); ?> На форме есть невидимый input, куда кидается номер id при редактировании. Но редактирования не происходит.
-
Буду очень благодарен за механизм редактирования. Удаление вроде получилось.
-
Спасибо, попробую так. А где именно в ссылке прописывать Get и каким образом?
-
SQL запрос на удаление и изменение я знаю. Но как реализовать это через надпись в строке. Например: —————————— |имя|возраст|удалить|изменить| —————————— То есть, нажимая на слово "удалить", удаляется данная строка. Нажимая на "изменить", данные строки переносятся на страницу с input'ами, где заносятся в них. При чем в выводимой таблице отсутствует id.
-
Удаление строки вообще из базы.
-
Объясните, пожалуйста, реализацию добавления и удаления строки из таблицы, при чем это должно происходить при нажатии на соответствующее слово в конце каждой строки. Или дайте хотя бы ссылку на статью, где это очень подробно расписано.
-
Спасибо. Вот только пробел действительно не работает добавил в квадратных скобках "\s" и пробел заработал
-
Какое регулярное выражение мне нужно написать, чтобы допустимые для ввода символы были русские буквы, латинские и пробел?
-
Переименовал название функции и заработало ) Впредь буду внимательней. Спасибо всем большое!
-
как так... Конечно это не весь код моей страницы, только ее часть. Раз уж на то пошло, вот весь код: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Home page</title> <link rel="shortcut icon" href="favicon.ico" /> <link rel="stylesheet" media="screen" href="css/style.css" /> <script type="text/javascript"> function color(obj) { obj.style.backgroundColor=obj.options[obj.selectedIndex].style.backgroundColor; } </script> </head> <body> <?php include "includes/connect.php"; ?> <div id="wrapper"><div id="wrapper-inner"> <div id="header"> <div id="header-top"> <div class="site-logo"> <a href="#" title="Site Logo">Site Logo</a> </div> <form action="" id="form-search-light"> <div class="form-item"> <label for="form-search-light-input-search">You can use search here</label> <input type="text" id="form-search-light-input-search" size="12" /> </div> <div class="form-item"> <input type="submit" value="GO" id="form-search-light-submit" /> </div> </form> </div> <div id="header-bottom"> <ul class="menu" id="menu-main-top"> <li><a href="index.php" title="Home page">Home</a></li> <li><a href="car.php" title="About page">Add car</a></li> <li><a href="customer.php" title="About page">Add customer</a></li> </ul> </div> </div> <div id="content"> <h2 class="page-title">Add car</h2> <div class="block-text"> <form action="add-car.php" method="post" name="car-registration"> <div> <label>Name</label> <input type="text" name="name" id="author" value=""/> <label>Year</label> <select style='width:100px;' name="year" size="1"> <?php $date_time_array = getdate( time() ); $i=0; while ($i<41) { echo "<option value=\"year\">".($date_time_array['year']-$i)."</option>"; $i++; } ?> </select> <label>Cost</label> <input type="number" name="cost" value=""/> <label>Color</label> <select style='width:100px;' id="color-choice" name="color-choise" size="1" onchange="color(this)";> <option style='background-color:white;' value="white"></option> <option style='background-color:yellow;' value="yellow"></option> <option style='background-color:red;' value="red"></option> <option style='background-color:orange;' value="orange"></option> <option style='background-color:black;' value="black"></option> <option style='background-color:gray;' value="gray"></option> <option style='background-color:brown;' value="brown"></option> <option style='background-color:green;' value="green"></option> <option style='background-color:navy;' value="navy"></option> <option style='background-color:salmon;' value="salmon"></option> </select> <label>Customer</label> <select style='width:100px;' name="customer" size="1" value="" onchange="document.getElementById('id-cust').value=this.options[this.selectedIndex].value"> <?php include "includes/connect.php"; $res=mysql_query("SELECT id,name FROM customers"); while($row=mysql_fetch_array($res)){ $customer=$row[name]; $id=$row[id]; echo "<option value=\"".$id."\" >".$customer."</option>"; } ?> </select> <input type='text' name="id-customer" id="id-cust" value""> <input type='text' name="color" id="colo" value""> <input name="submit" type="submit" value="ADD"> </div> </form> </div> </div> </div> <div id="footer"> <div class="footer-copy">© <a href="#">IT-Excellence</a></div> </div> </div></div> </body> </html>
-
Код такой: <html> <head> <script type="text/javascript"> function color(obj) { obj.style.backgroundColor=obj.options[obj.selectedIndex].style.backgroundColor; } </script> </head> <body> <form action="add-car.php" method="post" name="car-registration"> <label>Color</label> <select style='width:100px;' id="color-choice" name="color-choise" size="1" onchange="color(this)";> <option style='background-color:white;' value="white"></option> <option style='background-color:yellow;' value="yellow"></option> <option style='background-color:red;' value="red"></option> <option style='background-color:orange;' value="orange"></option> <option style='background-color:black;' value="black"></option> <option style='background-color:gray;' value="gray"></option> <option style='background-color:brown;' value="brown"></option> <option style='background-color:green;' value="green"></option> <option style='background-color:navy;' value="navy"></option> <option style='background-color:salmon;' value="salmon"></option> </select> </form> И с ней, и без нее не работает.
-
Спасибо. Я логику понял, код исправил, но все равно ничего не меняется.
-
есть код: this.style.backgroundColor=this.options[this.selectedIndex].style.backgroundColor; и выпадающий список: <select style='width:100px;' id="color" name="color-choise" size="1" onchange="color()";> Если я прописываю код прямо внутри списка, за место функции "color()", то код выполняется. Но если я записываю его так <script type="text/javascript"> function color() { this.style.backgroundColor=this.options[this.selectedIndex].style.backgroundColor; } </script> то ничего не происходит. В чем проблема?
-
Думал это можно сделать с помощью php как-нибудь. Но уже сделал с javascript.
-
Каким образом это можно сделать?
-
Список цветов с помощью задания их background-color я сделал. Но если я выбираю какой-либо из них, то он не отображается в основной панели комбобокса.
-
А как в комбобоксе их список сделать? Так же через стили? То есть задать стиль каждой ячейки комбобокса, и она выкрасится в нужный?
-
Нужно создать базу данных автомобилей, в которую входит атрибут "цвет". Выбор цвета осуществляется с помощью combobox'а. Как осуществить вывод не просто названий цветов в списке, а именно их отображение в нем?
-
Ура. Вроде бы так не создает дубликатов $res=mysql_query("SELECT * FROM rooms"); if ($row=mysql_fetch_array($res)) { } else { mysql_query("INSERT INTO rooms VALUES (101, 'синий')", $msconnect); mysql_query("INSERT INTO rooms VALUES (102, 'красный')", $msconnect); mysql_query("INSERT INTO rooms VALUES (103, 'желтый')", $msconnect); mysql_query("INSERT INTO rooms VALUES (104, 'белый')", $msconnect); mysql_query("INSERT INTO rooms VALUES (105, 'белый')", $msconnect); } Еще раз всем спасибо.
-
Понял. Вся проблема в этой части кода mysql_query("INSERT INTO rooms VALUES (101, 'синий')", $msconnect); mysql_query("INSERT INTO rooms VALUES (102, 'красный')", $msconnect); mysql_query("INSERT INTO rooms VALUES (103, 'желтый')", $msconnect); mysql_query("INSERT INTO rooms VALUES (104, 'белый')", $msconnect); mysql_query("INSERT INTO rooms VALUES (105, 'белый')", $msconnect); Просто при открытии страницы создавались новые значения. Дальнейшая проблема, каким образом отследить, есть ли эти значения в таблице, и если нет, то создать. Иначе не создавать.
-
Сначала нужно показать код файла page_5.php и обратить внимание на 59 строку. В приведённом вами коде нет 59 строки, отсюда я считаю что это не тот фаил на который указывает ошибка. И в приведённом вами коде нет подключения внешнего файла. 59 строка это: while($row=mysql_fetch_array($res)) ну во первых выводи ошибки $msconnect = mysql_connect($mshost, $msuser, $mspassword)or die(mysql_error()); mysql_select_db($msname, $msconnect)or die(mysql_error()); mysql_query("CREATE TABLE rooms ( n_room int, color text)", $msconnect)or die(mysql_error()); везде где запросы к базе. если чтото пойдет не так ты узнаешь , напиши что вышло. начал добавлять "or die(mysql_error())", и после того, как добавил ее после $res=mysql_query("SELECT * FROM rooms") появился результат хм... А попробовал без этой фразы и все равно работает. Значит я что-то упустил. Но все равно большое спасибо ) Вот только почему настолько много выводит? (101) - синий (102) - красный (103) - желтый (104) - белый (105) - белый (101) - синий (102) - красный (103) - желтый (104) - белый (105) - белый (101) - синий (102) - красный (103) - желтый (104) - белый (105) - белый (101) - синий (102) - красный (103) - желтый (104) - белый (105) - белый (101) - синий (102) - красный (103) - желтый (104) - белый (105) - белый (101) - синий (102) - красный (103) - желтый (104) - белый (105) - белый (101) - синий (102) - красный (103) - желтый (104) - белый (105) - белый Хотя надо, чтобы всего до 105 выводил
-
Есть такой код: <?php $mshost = "localhost"; // Хост $msuser = "user"; // Имя пользователя $mspassword = "11111"; // Пароль $msname = "test_db1"; // Имя базы данных $msconnect = mysql_connect($mshost, $msuser, $mspassword); mysql_select_db($msname, $msconnect); mysql_query("CREATE TABLE rooms ( n_room int, color text)", $msconnect); mysql_query("CREATE TABLE people ( id int, name text, n_room int)", $msconnect); mysql_query("INSERT INTO rooms VALUES (101, 'синий')", $msconnect); mysql_query("INSERT INTO rooms VALUES (102, 'красный')", $msconnect); mysql_query("INSERT INTO rooms VALUES (103, 'желтый')", $msconnect); mysql_query("INSERT INTO rooms VALUES (104, 'белый')", $msconnect); mysql_query("INSERT INTO rooms VALUES (105, 'белый')", $msconnect); $res=mysql_query("SELECT * FROM test_zero"); while($row=mysql_fetch_array($res)) { $n_room=$row[n_room]; $color=$row[color]; echo "($n_room) - $color <br>"; } mysql_close($msconnect); ?></p> после запуска появляется надпись: Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in U:\home\work\www\page_5.php on line 59 Находил различные решения, но они не помогали. В чем вообще проблема и как это исправить?
-
Все, разобрался. Тупил конечно. Теорию стоит почитать внимательней... И спасибо, что откликнулись.
-
Круто интересно посмотреть как ты сайты открываешь через "мой компьютер". Ну а если через браузер, то у тебя как минимум должен локальный сервер стоять. И Денвер не только должен стоять, он ещё должен быть запущен И локальный сервер есть, и денвер,конечно, запущен.
-
Возможно, что я не так выразился. Но все же, через dreamweaver фраза "hello" будет написана на странице, а запуская страницу вне проги - фразы не будет.