Передача переменных в Thickbox - PullRequest
0 голосов
/ 31 декабря 2011

Я использую ThickBox 3.1 и сожалею о том, что он больше не поддерживается, и я новичок в программировании, поэтому я могу использовать всю помощь, которую могу получить.

Я почти закончил настройку нескольких Thickbox на моем сайте, но мойпоследний требует, чтобы переменная была передана с родительской страницы в ThickBox, и я просто не могу подобрать ее в своем php-скрипте.У меня есть родительская страница, которая получает переменную из выбранного в данный момент выпадающего меню.При наведении курсора на ссылку, которая откроет модал ThickBox, я вижу:

http://localhost/forms/modal_product.html?strUser=100&TB_iframe=true&height=300&width=590

, и это здорово, потому что мне нужна переменная strUser.Таким образом, открывается ThickBox, я вводю некоторую информацию в краткую форму, точно так же, как мои другие ThickBox, но ничего не происходит.Когда я заглядываю под firebug, чтобы увидеть ответ AJAX, он сообщает мне, что:

<b>Notice</b>:  Undefined index: strUser in <b>C:\xampp\htdocs\forms\item_add.php</b> on line <b>3</b 

Я пытался увидеть, что $ _SERVER ['QUERY_STRING'];подходит и это NULL.

Я думаю, что мой вопрос является общим в том, что я просто не знаю, куда движется моя переменная _GET?Может ли кто-нибудь с опытом работы с ThickBox помочь мне?Я прочитал свою задницу и понял, что в более старых версиях ThickBox было труднее передавать переменные, и это требовало хаков, но я должен быть в состоянии сделать это так, как у меня есть.Что я делаю неправильно?Есть ли более простой способ передачи переменных или я просто упускаю что-то очевидное?

Также, когда я захожу на страницу формы напрямую, а не как ссылка через родительское окно, если я вручную помещаю переменную GET в URL, это все равно дает мне те же ошибки, что заставляет меня поверить, что япросто не хватает чего-то простого.Вот мой код php.

<?php
include '../dbc.php';
$getman  = ($_GET['strUser']);
$manid1  = mysql_query("SELECT manufacturer_id FROM manufacturers WHERE man_name='$getman'");
$manid11 = mysql_fetch_array($manid1);
$manid21 = $manid11[0];
if ($_POST) {
    // Collect POST data from form
    $item_num = stripslashes($_POST['item_num']);
    $descript = stripslashes($_POST['descript']);
    $quanti   = stripslashes($_POST['quanti']);
    $fdaa     = stripslashes($_POST['fdaa']);
  }
$params = $_SERVER['QUERY_STRING'];
$domain      = $_SERVER['SCRIPT_NAME'];
$queryString = $_SERVER['REQUEST_URI'];
$stmnt2 = mysql_query("INSERT INTO products (product_id, item_number, description, quantity_per_unit, fda_approved, manufacturer_id) VALUES ('NULL', '" . $item_num . "', '" . $descript . "' ,'" . $quanti . "', '" . $fdaa . "' , '" . $manid21 . "')");
$resp['status'] = 'success';
if ($stmnt2) {
    $resp['errmessage'] = "Item submitted. Submit another item or click close.";
} else {
    $resp['errmessage'] = $params;
}
echo json_encode($resp);
?> 

1 Ответ

1 голос
/ 06 января 2013

Я разобрался. Мне пришлось извлечь переменную в Jquery из URL, поместить ее в скрытое поле и запустить скрипт php.

...