id mysql не число

(Ответов: 3, Просмотров: 479)
  1. Banned
    • Регистрация: 11.02.2014
    • Сообщений: 98
    • Репутация: 10
    Вот мой код в index.php:
    PHP код:
    <?php $connection mysql_connect("localhost""пользователь""пароль"); $db mysql_select_db("имя базы"); mysql_set_charset("utf-8"); if(!$connection || !$db) { exit(mysql_error()); } if( isset( $_GET['id'] ) ) $id intval($_GET['id']); else $id $result mysql_query(" SELECT * FROM articles WHERE id='$id' "); mysql_close(); $row mysql_fetch_array($result); if(mysql_num_rows($result)==0){ header('HTTP/1.1 404 Not Found'); header('Location: /404.php'); die(); } ?> <?php include("frontend/blocks/header.php");?> <?php include("frontend/blocks/sidebar.php");?> <?php include("frontend/blocks/content.php");?> <?php include("frontend/blocks/footer.php");?>
    Когда в поле id стоит число, то на сайте ссылки вида - sait.ru/index.php?id=$1 (где $1 любой id из базы). Когда я в поле id написал текст, например вместо числа 1 написал слово privet, и попробывал перейти по ссылке sait.ru/index.php?id=privet, то реакции ноль. Короче как сделать, что бы была такая ссылка sait.ru/index.php?id=privet
    • -1
  2. Студент
    • Регистрация: 27.11.2011
    • Сообщений: 54
    • Репутация: 12
    Игорь Парфёнов, во-первых, если хотите вместо числа использовать строку для поиска записи, необходимо убрать эту часть:
    PHP код:
    $id intval($_GET['id']); 
    Она преобразует параметр $_GET['id'] (что бы там ни было) в число. Вместо него напишите:
    PHP код:
    $id $_GET['id']; 
    Во-вторых, проверьте, поддерживает ли ваше поле id в таблице базы данных строковые значения (из фразы "Когда я в поле id написал текст" предполагаю, что поддерживает, но обычно в поле id ставится исключительно число с параметром AUTO_INCREMENT).
    • 0
  3. Студент
    • Регистрация: 12.04.2014
    • Сообщений: 82
    • Репутация: 13
    Игорь Парфёнов, Вы бы еще код через обфускатор пропустили и потом бы выкладывали в окошке еще меньшего размера)
    • 2

    Спасибо сказали:

    x64(22.04.2015), Весёлый химик(25.04.2015),
  4. Студент
    • Регистрация: 18.04.2015
    • Сообщений: 42
    • Репутация: 1
    Игорь Парфёнов, вам надо выполнить вот такой запрос:
    PHP код:
    ALTER TABLE  table_name CHANGE  field_name  field_name VARCHAR64 
    table_name - название таблицы
    field_name - поля Id
    Только скорее всего оно автоинкриментное и уникальное - поэтому появятся проблемы в админке.
    Так что лучше ничего не меняйте.
    • 0

Похожие темы

Темы Раздел Ответов Последний пост
Не получается спарсить число
Web программирование 1 25.12.2013 16:57
Как увеличить число страниц
Вопросы от новичков 1 23.11.2012 19:33
Скрипт комментариев CommentIt Ajax (Mysql + Без mysql)
Софт, скрипты, лицензии 0 01.07.2012 00:59
Число читателей Rss (wordpress)
Вопросы от новичков 3 03.02.2012 23:30
Число страниц в Google
Google 13 26.01.2011 17:18

У кого попросить инвайт?

Вы можете попросить инвайт у любого модератора:

Информеры