$result=mysql_query("INSERT INTO priemka (uid,data_vremya,masters,type_app,type_z,marka,model,number_k,fio,imei,ser_num,complect,tsena,polomka,zametki,data2,status1,status2,status3,status4) VALUES('$uid','$vremya','$masters','$type_app','$type_z','$marka','$model','$number','$fio','$imei','$serialnumber','$complect','$stoimost','$nepoladka','$zametki','$data2','1','0','0','0')");
if($result=='TRUE')
{
echo"<p align=center>Квитанция успешно подготовлена, можно приступать к печати</p></br>";
}
else{
echo"Что то пошло не так, повторите попытку";
}
где переменная UID прилетает по $_POST['uid'] c другого скрипта. Но при обновлении страницы, в базу данных пишется такая же строка с таким же UID. Тут вот вопрос:
как сделать так, что после INSERT INTO шла проверка на существование такого же UID (на случай обновления страницы) в базе данных, и если он существует, то выполняем запрос UPDATE с примерно теми же параметрами что и INSERT. Не могу просто понять где его поставить, и как, примерно это так выглядит?
Думаю Вам стоит это прочесть: http://phpfaq.ru/newbie/na_tanke
Спасибо за мудрый совет, у меня всё получилось. О боги, как же я был слеп до тех пор, пока я не прочел данную статью по поводу как вывести эхом какой-либо текст...
а так без иронии если, тут почти каждый тычет каким то учебником, в котором мало нужного, по которому он и сам то не учился даже, ну либо не понимает, а обычный диванный эксперт-гугломейкер программирования. Я вопрос задал, как занести переменную за if, она погибает там, а не как вывести эхом текст. Если не понимаете или лень писать, можно было даже не напрягаться и писать какие то глупые ссылки
где после if (isset($_POST['select'])) { моя переменная умирает после нажатия кнопки sumbit. Как можно сделать чтоб она жила до самого конца? Если же в переменную $val1 записать просто какую то информацию, она живет вечно, а если там стоит $_POST - умирает. Просто не идет дальше, не могу ее подставить дальше в код, она просто становится пустой
как мы видим из кода, выведутся все столбцы в select, где каждый имеет свой option value= ['id_model'], который принадлежит к ID 1. Всё хорошо, у нас выводится вся информация в select, которая принадлежит ID 1. как мне сделать так, чтоб выше этого Select-а был еще один, где я мог выбрать ID 2, и ниже него уже попадали во второй select информация, которая принадлежит к id 2
В общем тут без кода можно пояснить - в переменную приходить $_POST['id'], я пока новичек и не знаю как мне сделать так, что если содержимое переменной $_POST['id'] например 1, то в переменную $mod записать значение 71 год, если в переменной $_POST['id'] прилетело число 2, то в переменную $mod надо записать содержимое со значением 13 вася ну и так далее. Подскажите пожалуйста как это осуществить
Добрый день!
Как-то смущает: "ну и так далее..."
Если на это не обращать внимание, то можно так;
Код просто открываетcя в браузере.
короче... как блин запустить php скрипт в редакторе кода?
Что еще надо какой плагин поставить чтоб он отрабатывался ?
Скачай Denwer и положи файл этот по пути test1.ru\www
все решилось проше, сделал скрытую форму, в которой присваивается конкретное значение переменной, добавил кнопку и обработчик в другом скрипте. На данный момент это для меня лучшее решение.
В общем тут без кода можно пояснить - в переменную приходить $_POST['id'], я пока новичек и не знаю как мне сделать так, что если содержимое переменной $_POST['id'] например 1, то в переменную $mod записать значение 71 год, если в переменной $_POST['id'] прилетело число 2, то в переменную $mod надо записать содержимое со значением 13 вася ну и так далее. Подскажите пожалуйста как это осуществить
Непосредственно внутри table не может быть form, кстати говоря. Внутри td - может быть.
Ваш браузер может ошибочную разметку переписывать странных образом.
И, опять же, где вы передаёте желаемый num_id с формы?
Возможно, у вас опыт разработки десктоп-приложений и вы просто не понимаете, когда именно работает php и соответствующую модель запрос-ответ, а не интерактивного приложения?
Нет, опыта у меня совсем нет, тут я полный нуб пока что, как говорится не побоюсь этого слова - дно )). Поэтому, увы.. и никто не может конкретным примером показать вот как в моем случае
при нажатии информация нужная попадает в базу для всех строк разом
Потому что именно это поведение и написано у вас в скрипте.
Для каждой строки проверяется, пользователь нажал кнопку? (любую кнопку!) Если да, то обновим строку. Каждую строку.
Что делать:
miketomlin пишет:
Идентификатор конкретной записи указывайте в ссылке, в имени кнопки и т.п. Потом обрабатывайте запрос.
miketomlin пишет:
Значение $ident должно как-то передаваться в обработчик.
И обновлять только переданную с формы строку.
В том то всё и дело, что не получается почем то. Обновляется либо с самой нижней строки, независимо от того, на какую кнопку нажал, либо сразу для всех, если пытаешся что-либо изменить в коде (Добавление)
Мелкий пишет:
myvin пишет:
при нажатии информация нужная попадает в базу для всех строк разом
Потому что именно это поведение и написано у вас в скрипте.
Для каждой строки проверяется, пользователь нажал кнопку? (любую кнопку!) Если да, то обновим строку. Каждую строку.
Что делать:
miketomlin пишет:
Идентификатор конкретной записи указывайте в ссылке, в имени кнопки и т.п. Потом обрабатывайте запрос.
miketomlin пишет:
Значение $ident должно как-то передаваться в обработчик.
О каком конкретно действии идет речь? Если о просмотре, редактировании (именно редактировании, а не сохранении отредактированного), то достаточно простых ссылок и метода GET.
Для изменения и т.п. можно использовать чекбоксы, индивидуальные формы, кнопки с собственными обработчиками и т.п. (Добавление)
Значение $ident должно как-то передаваться в обработчик.
Напишу так - имеется 5 столбцов в базе данных MySQL. Строк у этих столбцов может быть немерено, от 1 до там сотен тысяч (конечно когда их будет уже столько много, буду оптимизировать, не о этом речь), и каждая строка выводится на сайт циклом, то есть если строк в базе 500, то выводится 500 строк на сайт. Каждая отдельная строка имеет свой ID, который идет от 1 до.. до сколько строк в базе будет, столько и будет. В итоге мы имеем таблицу на сайте с каким то там числом строк. Мне нужно возле каждой строки кнопку, при нажатии на которую в определенный столбец базы данных будет вписана информация, но вписана она должна быть только строго для той строки, возле которой была нажата кнопка. То есть вывод информации у нас циклом while, и когда я вывожу кнопку sumbit для строки (они так же выводятся циклом while возле каждой), при нажатии информация нужная попадает в базу для всех строк разом, а не для конкретно той возле которой была нажата кнопка
Идентификатор конкретной записи указывайте в ссылке, в имени кнопки и т.п. Потом обрабатывайте запрос.
Вот, например, почитайте мою статью Как сделать вывод списка статей? и обязательно комменты к ней, т.к. в самой стать предполагается использование движка, который сам выбирает отдельные записи. (Добавление)
P.S. Вот это переливание из пустого в порожнее: $numid = $myrow['num_id']; и т.п.
Используйте какое-нибудь современное расширение для работы с БД, например mysqli.
В шаблоне лучше использовать альт. синтаксис (см. шаблоны в статье).
Соединение с базой лучше закрывать до выполнения шаблонов или вообще этого не делать, полагаясь на «сборку мусора».
Чуть переделал код, но все равно не то, что требуется.
и действие применяется не к одной строке status2, а ко всем строкам сразу, имеющимся в таблице, а нужно только строго к той строке, напротив которой я нажму на кнопку (имеется скажем html таблица с 10 строк, при нажатии на кнопку submit, значение столбца status2 меняется сразу во всех строках, а не только к той, возле которой кнопка
, данный код нам выдает все нужные строки в таблицу. Не пойму как сделать после конца каждой строчки кнопку, при нажатии на которую будет выполнен SQl запрос к базе данных MySQl, и будет действовать только на определенный ID строки. Например у нас в базе три строки, выводим все три строки из базы циклом while, и нам нужно чтоб при нажатии каждой кнопки, запрос в базу выполнялся именно с идентификатором конкретной строчки. То есть я нажму на кнопку возле третьей строки, именно третья строка пошлет запрос в базу данных