Правила     Закладки     Карма    Календарь    Журналы    Помощь    Поиск    PDA    Чат   
        СМС-ки
   
Пейджер выключен!
 
Фильтр авторов:    показать 
  скрыть
  Ответ в темуСоздание новой темыСоздание опроса

> Передача текста в БД
zdmagistr  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Новичок
*

Профиль
Группа: Пользователь
Сообщений: 3
Пользователь №: 42180
На форуме: 1 год, 6 дней
Карма:




Добрый день.
Есть форма
2 раскрывающихся списка (каждый берет значение из своей таблицы mysql)
1 просто поле input

По кнопки все 3 значения уходят еще в 1 таблицу, но все замечательно, но есть но
начинаю заполнять формы, и если в input пишу не число, то
$result = mysqli_query($dbc, $query)
or die ('ошибка при выполнении запроса');

идет по выбору, что ошибка, если ставлю в input число, то все прекрасно, все заносится в БД
В базе тип стоит на этом поле varchar
Так как только начинаю, уже не знаю куда смотреть.

Спасибо.
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
inpost  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Помагите Здесь живу!!!
******

Профиль
Группа: Эксперт
Группа переписки
Сообщений: 22694
Пользователь №: 20039
На форуме: 7 лет, 1 день
Карма: 599




zdmagistr
$query = "INSERT INTO `table` SET
`key` = '"
.mysqli_real_escape_string($dbc,$value)."',
`key2` = "
.(int)$value2."
"
;


Итого, для строк применяй одну функцию, а для чисел преобразовывай в число ;)


--------------------
Обучаю веб-программированию качественно и не дорого: http://school-php.com
Фрилансер, принимаю заказы: PHP, JS, AS (видео-чаты). Писать в ЛС (Личные сообщения на phpforum).
PMПисьмо на e-mail пользователюICQ
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
zdmagistr  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Новичок
*

Профиль
Группа: Пользователь
Сообщений: 3
Пользователь №: 42180
На форуме: 1 год, 6 дней
Карма:




inpost
Хм...Или я что то не так написал или понял. С 2мя списками понятно, там берется из БД и отправляется, но в инпуте может вводить пользователь по условию как число так и текст или даже то и то, мат операций производится не будет, устроит что числа запишутся как текст, но у меня сейчас выходит, что отправляется только число.
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
depp  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 299
Пользователь №: 40589
На форуме: 2 года, 5 дней
Карма: 20




на кавычки в запросе внимание обратите.
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
inpost  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Помагите Здесь живу!!!
******

Профиль
Группа: Эксперт
Группа переписки
Сообщений: 22694
Пользователь №: 20039
На форуме: 7 лет, 1 день
Карма: 599




zdmagistr
Ничего не понятно. Показывай код, который это обрабатывает + объясни что не так, и как должно быть.


--------------------
Обучаю веб-программированию качественно и не дорого: http://school-php.com
Фрилансер, принимаю заказы: PHP, JS, AS (видео-чаты). Писать в ЛС (Личные сообщения на phpforum).
PMПисьмо на e-mail пользователюICQ
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
zdmagistr  
 ۩  [x] Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Новичок
*

Профиль
Группа: Пользователь
Сообщений: 3
Пользователь №: 42180
На форуме: 1 год, 6 дней
Карма:




inpost
А вот не могли бы подсказать, в каких случаях лучше использовать <form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post" > т.е. не разбивать php страницу и html? А когда лучше отдельно action на отдельную страницу php?


Я сейчас сделал все в 1 файле и пхп и хтмл, но логика показывает, что получилось коряво, тк использовал таблицы в них вставлял формы, аж стыдно показывать

Подскажите нерадивому, ибо первый проект, может все ж отделить в 2 файла, или как то переструктурировать код, какие замечания, может начнут с этого выправляться руки
А проблема в том, что когда отправляю форму, если отправляю в таблицу card значение в laptop, то принимает только число, если текст или число+текст, то идет по ветке or и говорит, что ошибка при выполнении запроса

Код
<html>
<
head>
<
title>Учет оборудования</title>
<
meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
</
head>
<
body>
<?php



echo '<table width="100%" border="2">';
echo ' <tr >';
echo ' <td colspan="2">';
echo ' <h1><center>Заполнить карточку кабинета</center></h1>';
echo '</td>';
echo ' </tr>';
echo ' <tr valign="top">';
echo ' <td width="20%" rowspan="2">' ;
include("menu.php");
echo ' </td>';
echo ' <td>Карточка<br />';
echo 'Фамилия ' ;

?>

<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post" >

<
select name="lastname" size="1">
<?php
$dbc = mysqli_connect('localhost', 'root', '104722', 'inventory')
or die ('Ошибка подключения к БД');
$query = "select * from personal ORDER BY name";
$result = mysqli_query($dbc,$query)
or die ('ошибка при выполнении запроса');
while ($row = mysqli_fetch_array($result)){
echo '<option value="'.$row['name'].'">' . $row['name'] . '</option>';
}
?> </select>
<?php


echo '<br /> Кабинет ';

?>
<select name="kabinet" size="1">
<?php
$dbc = mysqli_connect('localhost', 'root', '104722', 'inventory')
or die ('Ошибка подключения к БД');
$query = "select * from workroom ORDER BY room";
$result = mysqli_query($dbc,$query)
or die ('ошибка при выполнении запроса');
while ($row = mysqli_fetch_array($result)){
echo '<option value="'.$row['Room'].'">' . $row['Room'] . '</option>';
}
?> </select>
<?php


echo '<br />';

?>
<label for="Laptop">Ноутбук</label>
<
input id="Laptop" name="Laptop" type="text" /><br />

<
input type="submit" value="Добавить" name="add" />

</
form>
<?php
$laptop = $_POST['Laptop'];
$kabinet = $_POST['kabinet'];
$lastname = $_POST['lastname'];
$dbc = mysqli_connect('localhost', 'root', '104722', 'inventory')
or die ('Ошибка подключения к БД');
$query = "INSERT INTO card (personal, room, laptop)".
"VALUES ('$lastname', '$kabinet', $laptop )";
$result = mysqli_query($dbc, $query)
or die ('ошибка при выполнении запроса');
mysqli_close($dbc);
echo 'Сохранено';

echo ' </td>';
echo ' <tr>';
?>
<body>
<
html>


Это сообщение отредактировал zdmagistr - 3.12.2015 - 19:18
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Valick  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 5493
Пользователь №: 35718
На форуме: 4 года, 19 дней
Карма: 167




Цитата (zdmagistr @ 3.12.2015 - 18:11)
может начнут с этого выправляться руки

Подозреваю что книжек почитать вы не любитель.


--------------------
wmr - R281553014107
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
inpost  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Помагите Здесь живу!!!
******

Профиль
Группа: Эксперт
Группа переписки
Сообщений: 22694
Пользователь №: 20039
На форуме: 7 лет, 1 день
Карма: 599




Цитата
А вот не могли бы подсказать, в каких случаях лучше использовать <form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post" > т.е. не разбивать php страницу и html? А когда лучше отдельно action на отдельную страницу php?

Не вижу необходимости в отдельных страницах. Тебе бы связать минимум.

Цитата
то идет по ветке or и говорит, что ошибка при выполнении запроса

Я тебе выше назвал функции, которые необходимо применить и показал синтаксис как это сделать. Если ты его использовать не будешь, то и работать у тебя ничего не будет, очевидно же wink.gif


--------------------
Обучаю веб-программированию качественно и не дорого: http://school-php.com
Фрилансер, принимаю заказы: PHP, JS, AS (видео-чаты). Писать в ЛС (Личные сообщения на phpforum).
PMПисьмо на e-mail пользователюICQ
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
  Быстрый ответ
Информация о Госте
Введите Ваше имя
Кнопки кодов
Для вставки цитаты, выделите нужный текст и
НАЖМИТЕ СЮДА
Введите сообщение
Смайлики
:huh:  :o  ;) 
:P  :D  :lol: 
B)  :rolleyes:  <_< 
:)  :angry:  :( 
:unsure:  :blink:  :ph34r: 
     
Показать всё

Опции сообщения  Включить смайлики?
 Включить подпись?
 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:

Опции темы Ответ в темуСоздание новой темыСоздание опроса