Вставить запись php из таблицы mysql в другую таблицу - PullRequest
1 голос
/ 16 августа 2011

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

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

Этот код прекрасно работает, только когда $ id = 1.

$vidq = "SELECT * FROM tutorials";
$vidresult = mysql_query($vidq);
$vidrow = mysql_fetch_array($vidresult);

//form submission
if($_POST['formname'] == "submit") {

$name = $_POST['name'];
$id = $vidrow['id'];
$errorMessage = "";
if(empty($name)) {
    $errorMessage .= "<li>Please enter a valid name</li>";
    }

if(empty($errorMessage)) {

    $insert = "INSERT INTO tableA (videoid, name) VALUES (".$id.", ".$name.")"; 

    mysql_query($insert);
    exit();
    }
}

Когда я меняю $ id на = 1, он публикует сообщения, но когда $ id на = $ vidrow ['id'] не публикуется.

Что я делаю не так?

Ответы [ 2 ]

0 голосов
/ 16 августа 2011
  1. Вы пытались распечатать содержимое $id после $id = $vidrow['id'];? Это может показать, почему это не работает так, как вы хотите ...

  2. Задумывались ли вы о том, что может произойти, если злонамеренный (или просто любопытный) пользователь вызовет ваш скрипт с помощью ?name=%27%27%29%3b%20DROP%20TABLE%20tableA%3B?

0 голосов
/ 16 августа 2011

Попробуйте отобразить сообщение об ошибке mysql, используя mysql_errno / mysql_error.Например ...

if (!mysql_query($insert))
{
    die('MySQL Fail (' . mysql_errno() . ') - ' . mysql_error());
}

mysql_errno () документация - http://php.net/manual/en/function.mysql-errno.php

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...