Как использовать NOW () в этой строке

Надеюсь, у вас все в порядке ... Во-первых, я хотел бы сказать, что английский - не мой родной язык, поэтому я попытаюсь объяснить свою проблему.

У меня есть веб-сайт с субтитрами для телешоу, и теперь я добавляю новую переменную в свой Интернет, где я могу выбрать вариант загрузки субтитров, и они будут скрыты (невидимы в моем индексе).

Итак, у меня есть все переменные и остальная часть программы.

Дело в том, что когда я пытаюсь разместить переменные в том же порядке, что и в моей базе данных, я не могу заставить их работать:

Например.

Если я использую:

$query = "INSERT INTO fversions(subID,fversion,author,versionDesc,comment,hidden,indate) " .
 "VALUES(" . $subID . "," . $fversion . "," . $userID .
   ",'" . $fversions . "','" . $comment . "','" . $hidden . "',NOW())";
     mysql_query($query);

<

Это работает ... дело в том, что в моей базе данных "indate" стоит перед "hidden" ... он indate, а затем скрыт, потому что это новая строка.

Итак, я пытаюсь привести значения в порядок, но не могу заставить его работать.

 $query = "INSERT INTO fversions(subID,fversion,author,versionDesc,comment,indate,hidden) " .
"VALUES(" . $subID . "," . $fversion . "," . $userID . ",'" . $version . "','" . $comment . ",NOW(),'" . $hidden;
                   mysql_query($query);

Если я поставлю indate, а затем скрыт (просто для того, чтобы все было в порядке), это не сработает, потому что я не знаю, как написать эту строку ...

Я не разработчик, я потерял свой, поэтому я стараюсь изо всех сил и не знаю, как записать значения NOW () и $ hidden, чтобы это могло работать.

NOW () - это значение indate, то есть час (фактическое время).

Может ли кто-нибудь написать мне, как мне написать это предложение:

  "VALUES(" . $subID . "," . $fversion . "," .
       $userID . ",'" . $version . "','" . $comment . ",NOW(),'" . $hidden;

Так это могло сработать?

Большое спасибо!

Какой тип поля вашей базы данных получает дату? Возможно, вам придется отформатировать дату в правильном формате.

MadeInDreams 18.03.2018 19:01

Позвольте мне объяснить, сейчас все работает ... потому что тот, кто создал мой веб-сайт, сделал все ... дело в том, что я просто добавляю новую переменную прямо сейчас (которая скрыта). Итак, моя единственная проблема в том, что я не знаю, как написать ту строчку, которую я там написал (строчку значений). Я имею в виду, мне не нужно ничего менять, просто мне нужна помощь, чтобы добавить «скрытую» переменную, которая работает с NOW ().

Randy García 18.03.2018 19:04

Итак ... другими словами ... Мне просто нужно это: $ query = "INSERT INTO fversions (subID, fversion, author, versionDesc, comment, hidden, i‌ ndate)". "VALUES (". $ SubID. ",". $ Fversion. ",". $ UserID. ", '". $ Fversions. "', '". $ Comment. "', '". $ Hidden. "' ,СЕЙЧАС())"; mysql_query ($ query); <но с указанием до скрытого. Где NOW () - это значение indate, а $ hidden - для скрытого ...

Randy García 18.03.2018 19:07

«ВСТАВИТЬ В таблицу (поле1, поле2, поле3) ЗНАЧЕНИЯ ('$ phpvar1', '$ phpvar2', СЕЙЧАС ())»

MadeInDreams 18.03.2018 19:08

что со всеми точками. PHP готов к mysql, нет необходимости писать такой запрос

MadeInDreams 18.03.2018 19:09

Ну, дело в том, что прямо сейчас у меня нет разработчика на моем веб-сайте, поэтому я не могу иметь удовольствие вносить большие изменения, вы знаете xD, потому что я не хочу ничего ломать ... поэтому я написал вот как код, чтобы кто-то мог мне помочь и просто исправить мне строку, используя ту же самую, что я опубликовал ...

Randy García 18.03.2018 19:11

Ну, вы не можете просто так изменить порядок. Вам также придется изменить порядок своей БД. Кроме того, я не понимаю, зачем вам нужен конкретный заказ, поскольку, когда вы получаете данные, вы делаете с ними то, что хотите.

MadeInDreams 18.03.2018 19:14

я предполагаю, что в запросе отсутствуют кавычки: попробуйте следующее: - $ query = "INSERT INTO fversions (subID, fversion, author, versionDesc, comment, indate, h‌ idden)". "VALUES (". $ SubID. ",". $ Fversion. ",". $ UserID. ", '". $ Version. "', '". $ Comment. "', NOW (), '". $ скрытый."')";

shashikant kuswaha 18.03.2018 19:15

Порядок в моей базе данных указан, а затем скрыт. Я просто говорю, что если я использую скрытый, прежде чем указывать, что он работает, потому что NOW () закрывает строку, и просто добавить переменную перед закрытием строки. Дело в том, что в своей базе данных я добавляю скрытую строку, поэтому скрытая - последняя. Поэтому я хотел бы соблюдать порядок в переменных ... и это моя единственная проблема ... Я не знаю, как написать now () перед $ hidden и закрыть строку. Это просто: $

Randy García 18.03.2018 19:15

Надеюсь, вы попробовали мое вышеупомянутое решение, и оно должно работать нормально.

shashikant kuswaha 18.03.2018 19:17

@shashikant kuswaha - Хорошо, я попробую сейчас ... Я дам тебе знать

Randy García 18.03.2018 19:18

Ваши недостающие цитаты и многие из них тоже. Нет необходимости экранировать всю вашу переменную php, например, INSERT INTO table (fieldname) VALUES ('value'); "ВСТАВИТЬ В таблицу (имя поля) ЗНАЧЕНИЯ ('$ phpVar')"

MadeInDreams 18.03.2018 19:25

MadeInDreams - Я понимаю вас, но я хотел бы, чтобы вы понимали, что я сейчас один, поэтому я не могу менять эту часть кода, потому что она сломает все остальное ... так что для меня это невозможно.

Randy García 18.03.2018 19:30

шашикант кусваха - спасибо .... а есть ли другой способ выразить это? потому что он частично работает с заказом, который вы мне отправили, просто я чувствую что-то странное, потому что загрузка была сделана, но в другое место: $ Как я уже сказал: это работает: $ query = "INSERT INTO fversions (subID, fversion, author, versionDesc, comment, hidden, i‌ ndate) ". "VALUES (". $ SubID. ",". $ Fversion. ",". $ UserID. ", '". $ Fversions. "', '". $ Comment. "', '". $ Hidden. "' ,СЕЙЧАС())"; mysql_query ($ query); Но я не знаю, должен ли я соблюдать порядок в базе данных или нет - скрытый должен быть последним

Randy García 18.03.2018 19:32

Хорошо, нет, вам не нужно думать о порядке, если вы не указываете имя каждого столбца в нем, поэтому для вашего ответа: нет, вам не следует беспокоиться о порядке столбцов таблицы, как ваша вставка должна работать нормально.

shashikant kuswaha 18.03.2018 19:36

хорошо ... потому что я волновался ... Я подумал, что мне нужно соблюдать порядок, который находится в базе данных на момент написания php.

Randy García 18.03.2018 19:38

хорошо, я думаю, ваша проблема решена, вам может понравиться мой комментарий

shashikant kuswaha 18.03.2018 19:45

@MadeInDreams - Не могли бы вы прислать мне, что вы говорили?

Randy García 18.03.2018 19:46

$ query = "INSERT INTO fversions (subID, fversion, author, versionDesc, comment, hidden, i‌ ndate) VALUES ('$ subID', '$ fversion', '$ userID', '$ fversions', '$ comment' , '$ скрытый', 'СЕЙЧАС ()') "; mysql_query ($ query);

MadeInDreams 18.03.2018 19:51

@shashikant kuswaha - Большое спасибо! Я ждал твоего ответа; есть ли другой способ написать строку, но в правильном порядке ... Я имею в виду, он работает со строкой, которую вы мне отправили, но я волнуюсь, потому что в первый раз я попытался, потерпел неудачу, а затем работал хорошо ... поэтому я хотел бы знать, есть ли другой способ написать это? (Я говорю о "." И таких вещах: $

Randy García 18.03.2018 19:52

@MadeInDreams - помните, что скрытый - последний ... если вы можете это отредактировать, пожалуйста :)

Randy García 18.03.2018 19:53

Вы, вероятно, используете точечную технику для использования двойных кавычек, чтобы значения могли содержать одинарные кавычки. Дело в том, что одинарная кавычка - это не апостроф, но мы используем ее как единое целое.

MadeInDreams 18.03.2018 19:53

@Randy Garcia Вы не можете изменить порядок в таком запросе на вставку. Это потребует от вас большего количества кода.

MadeInDreams 18.03.2018 19:57

Однако вы можете установить результаты в желаемом порядке, когда вы их извлекаете и показываете. Пока у вас есть данные. На самом деле нас не волнует порядок.

MadeInDreams 18.03.2018 19:58

Так или иначе, это требует кодирования.

MadeInDreams 18.03.2018 19:59

MadeInDreams, я хотел бы знать ... нужен ли мне точный порядок в коде, как в моей базе данных? Порядок указывается, а затем скрывается. Сначала вы отправили мне код со скрытым. Порядок не имеет значения? Как сказал мне шашикант кусваха или действительно имеет значение?

Randy García 18.03.2018 19:59
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
3
26
61
1

Ответы 1

На основании последнего вопроса и кода.

Вы захотите перейти на mysqli с mysql раньше, чем позже. Первый будет устаревшим, если вы обновите версию php.

Предполагая, что все ваши переменные php, кроме $ version и $ comment, являются целыми числами / числами с плавающей запятой:

VALUES(" . $subID . ", " . $fversion . ", " .
   $userID . ", '" . $version . "', '" . $comment . "', NOW(), " . $hidden . ")"

Вы можете улучшить с помощью sprintf ():

sprintf("VALUES(%d, %d, %d, '%s', '%s', NOW(), %d)", [
    $subID, $fversion, $userID, $version, $comment, $hidden
]

Вы можете улучшить ситуацию с помощью mysqli_real_escape_string:

sprintf("VALUES(%d, %d, %d, '%s', '%s', NOW(), %d)", [
    (int)$subID,
    (int)$fversion,
    (int)$userID,
    mysqli_real_escape_string($dbLink, $version),
    mysqli_real_escape_string($dbLink, $comment),
    (int)$hidden
]

Привет, @ RandyGarcía! Если это решило вашу проблему, нажмите на мой ответ, чтобы принять его как решение.

Harry B 06.04.2018 14:14

Другие вопросы по теме