[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: как правильно вывести
Страницы: 1, 2, 3
miketomlin
А по-моему все же тролль. Кавычки, сказал, не те. И даже сказал, где.

Вместо многоточия ставить, что положено.

И error()+return – это в парадигме простого гипотетического каркаса (на самом деле не такого уж и гипотетического, но не суть). Используйте свой способ обработки ошибок.
miketomlin
Какие сложные запросы? Из какой др. таблицы? Я отвечал только на последнее. По поводу «непонятно».
miketomlin
В ваш стартовый пост с первого прочтения не въехал. Или давайте на картинках. Или ищите более заинтересованного помощника.
Kusss
Вы хоть несколько простых примеров посмотрите
// Не рабочий вариант
$sql = "SELECT * FROM 'tabl2' WHERE 'tabl1_id'= '$valid' ";
// Рабочий
$sql = "SELECT * FROM `tabl2` WHERE `tabl1_id`= '". $mysqli->real_escape_string($valid) ."' ";
$result = $mysqli->query($sql);
lexxbry
таблица 1 таблица 1
таблица 2 таблица 2

запрос на примере id=114
в каждом объекте id меняется
определил переменную
$valid = $item->id; (эта переменная цепляет id из первой таблицы в соответствии с документом)

без каких либо манипуляций с файлом вывод
echo '<div class="title_top info"><h2>'.$valid.'</h2>';
выводит цифру 114

задача:
вместо цифры 114 вывести данные из поля value второй таблицы на основании что поле item_id(второй таблицы) равно полю id (она же переменная $valid) из первой таблицы

как то так
lexxbry
Kusss
спасибо огромное это почти то что надо


$sql = "SELECT * FROM `tabl2` WHERE `tabl1_id`= '". $mysqli->real_escape_string($valid) ."' ";
$result = $mysqli->query($sql);
$val1 = mysqli_fetch_array($result);

с этим кодом выводит если в таблице только 1 'tabl1_id' равен переменной,
а если их несколько, то выводит знаки ????????
я так понимаю дело в fetch_array
ну тут думаю уже разберусь
еще раз огромное спасибо
miketomlin
Там же не однозначное соответствие (куча 114-ых). Такое обычно словом «вместо» не называют. «Вместо» – это когда имя, слаг и т.п. вместо числового id.

Но если вы просто неправильно высказались, то используйте в послед. фрагменте вместо ветвления цикл while, например:

while ($row=mysqli_fetch_assoc...) {
...
}


Реально в шаблонах обычно такой синтаксис используют, например:

<?php while ($row=getrow()): ?>
...
<?php endwhile; ?>

Т.е. $result раньше времени не освобождаете. Для извлечения записи из выборки используете функцию-обертку и т.п.
miketomlin
Экранирование $valid можно не делать, если ее значение ранее проходило «обычную» валидацию.
lexxbry
Спасибо вечером попробую
miketomlin
Это значение даже уже может быть получено из контекста текущей страницы, а не из входного параметра.
lexxbry
еще раз огромное спасибо
выводит все нужные данные

правда в столбик
может скажете как при этом вывести в строку и с разделением либо запятой либо точкой с запятой
AllesKlar
Цитата (lexxbry @ 20.08.2018 - 17:11)
правда в столбик
может скажете как при этом вывести в строку и с разделением либо запятой либо точкой с запятой

Потому что ты читаешь значения циклом.
Каждая итерация цикла выводит тебе новую сроку, либо htm тег, типа Hn, который так же делает перенос строки.
Если все значения нужно собрать воедино, то собирай их в цикле в одну переменную, а после цикла уже выводи.

_____________
[продано копирайтерам]
lexxbry
Собрать в цикле в переменную???
сейчас выводит таким образом
while($val1 = mysqli_fetch_array($result))

{
echo '<div class="title_top info"><h2>'.$val1['value'].'</h2>';}


как в цикле собрать если item_id одинаковый , а содержимое Value разное
VeRTak
miketomlin

Ну по моему не он троллит, а его. Что из них есть кавычка, а что гравис? ' и `
Valick
Цитата (AllesKlar @ 20.08.2018 - 19:49)
Если все значения нужно собрать воедино, то собирай их в цикле в одну переменную, а после цикла уже выводи.

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

_____________
Стимулятор ~yoomoney - 41001303250491
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.