Вопрос по php+mysql

iiwebber
На сайте с 14.06.2011
Offline
96
1276

Гуру php помогите плз со следующим вопросом (профильные форумы и гугл прочесал схожей проблемы не нашел)

Есть 2 вида таблицы, prihod и rashod

id_prihod | id_dog (ид договора) | artikul

id_rashod | id_dog (ид договора) | artikul

Т.е. в эти 2 таблицы заносятся артикулы прихода/расхода к каждому договору. Юзер выбирает нужный ему номер договора и попадает на страницу где берет либо Артикул на эти 2 типа. Задача стоит в запросе к этим 2 таблицам и проверка есть ли по нужному id_dog записи, если есть то отправлять в форму значение+1, если нет - начинать с 1.

$result = mysql_query("SELECT artikul FROM rashod WHERE id_dog=".$_POST['dog']");

$row = MySQL_fetch_row($result);

$result2 = mysql_query("SELECT artikul FROM prihod WHERE id_dog=".$_POST['dog']");

$row2 = MySQL_fetch_row($result2);

<input type=\"hidden\" name=\"number\" id=\"number\" value=".$artikul.">

Как мне узнать есть ли запись в этих таблицах и что именно записывать в переменную $artikul если проверка в базе на наличие происходит до того как юзер в select выберет что он хочет взять приход или расход :confused:

Чувствую что решение где то рядом но уже без сил:)

LEOnidUKG
На сайте с 25.11.2006
Offline
1774
#1

Заранее сплюсовать и вывести. Не?

✅ Мой Телеграм канал по SEO, оптимизации сайтов и серверов: https://t.me/leonidukgLIVE ✅ Качественное и рабочее размещение SEO статей СНГ и Бурж: https://getmanylinks.ru/ ✅ Настройка и оптимизация серверов https://getmanyspeed.ru/
iiwebber
На сайте с 14.06.2011
Offline
96
#2

Так если нет еще например к этому договору артикула он же ничего не вернет? к чему приплюсовывать

siv1987
На сайте с 02.04.2009
Offline
427
#3

- Юзер выбирает номер договора, попадает на страницу

- при генерации этой страницы выбираете записи из бд по номеру договора.

- ПРОФИТ

iiwebber
На сайте с 14.06.2011
Offline
96
#4

Так и сделал, спасибо :)

Кстати заметил один баг, случайно наткнулся на похожую проблему в гугле, иначе бы так и застрял. В хроме стоит рдс бар. Когда по клику скрипт записывает в базу значение +1 рдс бар почему-то запускает этот скрипт еще раз, по итогу в базу 2 записи по 1 клику записывались.

В других браузерах все ок

iiwebber
На сайте с 14.06.2011
Offline
96
#5

Дабы не создавать лишних топиков спрошу здесь опять, может кто-то подскажет :)

SQL запроса такого вида - SELECT quiz_topics.topic_id, quiz_topics.topic_name FROM quiz_topics LEFT JOIN quiz_results ON (quiz_topics.topic_id=quiz_results.topic_id) WHERE (quiz_results.topic_id IS NULL) OR (quiz_results.login_user = 'root' AND quiz_results.result = 0)

в phpmyadmin выполняется на ура, но в php массив NULL возвращает, бьюсь головой уже 2й день

код в php -

<select class="form-control" name="category" id="category">
<option value="" disabled>Выберите тест</option>

<?

$con=mysqli_connect("***","***","***","***");


$sql = "SELECT 'quiz_topics.topic_id', 'quiz_topics.topic_name' FROM quiz_topics LEFT JOIN quiz_results ON ('quiz_topics.topic_id'='quiz_results.topic_id') WHERE ('quiz_results.topic_id' IS NULL) OR ('quiz_results.login_user' = '$user' AND 'quiz_results.result' = 0)";

$data = mysqli_query($con,$sql);

$myResult = mysqli_fetch_assoc($data);
var_dump($myResult); --> NULL возвращает

if (mysqli_query($con,$sql)) {
echo "Table persons created successfully"; --> ошибок не выводится
} else {
echo "Error creating table: " . mysqli_error($con);
}



while($row=mysqli_fetch_array($data)) {
echo '<option value="'.$row['topic_id'].'">'.$row['topic_name'].'</option>';
}

?>
</select>



---------- Добавлено 20.08.2014 в 13:13 ----------

В google все перелопатил, по моей проблеме советует переходить c mysql_query на mysqli_ и т.д. - ничего не помогает

SD
На сайте с 20.07.2014
Offline
4
#6

Отделите название таблицы от поля следующим образом:

'quiz_topics.topic_id' => `quiz_topics`.`topic_id`
'table.field' => `table`.`field`
iiwebber
На сайте с 14.06.2011
Offline
96
#7

Большое спасибо добрый человек! Заработало)

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий