Ссылка на столбец в таблице

  • Автор темы Автор темы dirol
  • Дата начала Дата начала
Vallar_ultra, я это уже читал. И даже не 10 раз, а больше, но никак понять не могу. Как эту статью применить на практике....
 
dirol
Плохо читал!
Значит надо было в маске, ластах и под водой (для большей усвояемости). Ещё можно с права налево читать, или по диагонали!

Общие принципы программирования учи.
O PHP
 
Фанат

ИМХО в FAQ всё вполне доходчиво расписано, и не только насчёт IF{} ELSE{}. Надо потратить пару часов времени для усвоения материала из FAQ и после этого он вряд-ли будет говорить что-нить типа: "Как эту статью применить на практике."
 
нету в факе на танке ни слова про операторы пхп. давай ты не будешь со мной на эту тему спорить?
 
$id = (isset($_GET["id"])) ? (int) $_GET["id"] : 0;
if ($id) {
$query = "SELECT name, description FROM table WHERE id=" . $id;
$result = mysql_query($query);
$row = mysql_fetch_assoc($result);
echo "<h1>" . $row["name"] . "</h1>";
echo "<p />" . nl2br($row["description"]);
}

Я правильно понял, что именно эта чать кода отвечает за открытие новой страницы?
 
<?php
include "config.php";
$alfa = array ("а", "б", "в", "г", "д", "е",
"ж", "з", "и", "к", "л", "м",
"н", "о", "п", "р", "с", "т",
"у", "ф", "х", "ц", "ч", "ш",
"щ", "ъ", "ы", "ь", "э", "ю", "я");
$selected_char = "";
if (isset($_GET["char"])
&& in_array(urldecode($_GET["char"]), $alfa)) {
$selected_char = urldecode($_GET["char"]);
}
<?

if (!empty($selected_char)) {
$ath = mysql_query('select Name, Id from sonnik_miller WHERE Name LIKE "$selected_char%";');
if($ath)
{
echo "<table border=1";
echo "<tr><td><b><center>Наименование</center></b></td></tr>";
while($son = mysql_fetch_array($ath))
{
echo "<tr>
<td><a href=index.php?id=".$son['Id'].">".$son['Name']."</a></td>
</tr>";
}

echo "</table>";
}

} else {
echo "";
}
?><?

?><a href="index.php">Главная</a> |

<table><tr>
<?
$colls = 10; $count = count($alfa); $i=0;

foreach ($alfa as $char) {
if($i%$colls==0) echo '</tr><tr>';
?>
<td><a href="index.php?char=<?=urlencode($char)?>"><?=$char?></a></td>
<?
$i++;
}
?>
//Код выводит новую страницу
<?
$id = (isset($_GET["id"])) ? (int) $_GET["id"] : 0;
if ($id) {
$query = "SELECT name, description, Id FROM 'sonnik_miller' WHERE id=" . $id;
$result = mysql_query($query);
$row = mysql_fetch_assoc($result);
echo "<h1>" . $row["name"] . "</h1>";
echo "<p />" . nl2br($row["description"]);
}
?>
Последний код почему-то не работает.
В чем там может быть ошибка?
Разъясните, пожалуйста или подтолкните...
 
Ошибка тут, смотри внимательно:
$ath = mysql_query('select Name, Id from sonnik_miller WHERE Name LIKE "$selected_char%";');
 
Vallar_ultra, а чем тут может быть ошибка, если эта часть скрипта выполняется.
Как я ее понимаю: делаем запрос из БД. Скрипт возвращает наименование товаров, названия которых начинаются с выбранной буквы, т.е. $selected_char.
Далее, каждому наименованию присваивается уникальная ссылка: <a href=index.php?id=".$son['Id'].">".$son['Name']."</a>, а вот по этой ссылке как раз и не переходит.
Вот часть кода, которая отвечает за создание новой страницы с наименованием и описанием:
<?
$id = (isset($_GET["id"])) ? (int) $_GET["id"] : 0;
if ($id) {
$query = "SELECT name, description, Id FROM 'sonnik_miller' WHERE id=" . $id;
$result = mysql_query($query);
$row = mysql_fetch_assoc($result);
echo "<h1>" . $row["name"] . "</h1>";
echo "<p />" . nl2br($row["description"]);
}
?>
 
Vallar_ultra, спасибо.
Как я и говорил, ошибочка была в последнем коде.
Отладка помогла разобраться!
 
У тебя было:
$ath = mysql_query('select Name, Id from sonnik_miller WHERE Name LIKE "$selected_char%";');

а надо

$ath = mysql_query('select Name, Id from sonnik_miller WHERE Name LIKE "'.$selected_char.'%";');
 
Vallar_ultra, эту строчку я не менял.
я поменял второй запрос к базе в последнем коде: $query = "SELECT name, description, Id FROM 'sonnik_miller' WHERE id=" . $id;
 
Сверху