PhP Get Data не присваивается переменной - PullRequest
1 голос
/ 29 марта 2012

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

Вот мой код:

<?php

// Including all required classes
require_once('class/BCGFontFile.php');
require_once('class/BCGColor.php');
require_once('class/BCGDrawing.php');

// Including the barcode technology
require_once('class/BCGcode39.barcode.php');

// Loading Font
$font = new BCGFontFile('./class/font/Arial.ttf', 18);

// The arguments are R, G, B for color.
$color_black = new BCGColor(0, 0, 0);
$color_white = new BCGColor(255, 255, 255);

//$invoice="36";
$drawException = null;
$invoice = $_GET['invoice'];
try {
$code = new BCGcode39();
$code->setScale(2); // Resolution
$code->setThickness(30); // Thickness
$code->setForegroundColor($color_black); // Color of bars
$code->setBackgroundColor($color_white); // Color of spaces
$code->setFont($font); // Font (or 0)
$code->parse($invoice); // Text
} catch(Exception $exception) {
$drawException = $exception;
}

Проблема в том, что строка 22 * ​​1006 * фактически не извлекает данные! если я раскомментирую "//$invoice="36"; и закомментирую раздел get, код будет работать правильно.

Есть идеи?

Ответы [ 4 ]

0 голосов
/ 29 марта 2012

Это означает, что вы не отправили invoice как метод GET, вам нужно проверить, существует ли он.

$invoice = isset($_GET['invoice']) ? $_GET['invoice'] : 'default invoice';
/*I dont know what is invoice var and its type , but its always good to validate 
   user input*/
if(validInvoice($invoie)) {
  //doStuff
}
0 голосов
/ 29 марта 2012

Вы уверены, что отправляете с GET, а не POST?Попробуйте выполнить print_r($_GET); и print_r($_POST); и посмотрите, где находится «счет-фактура».

0 голосов
/ 29 марта 2012

пытается добавить это в начало вашего кода

if(isset($_GET['invoice'])){$invoice = $_GET['invoice']; }else{ echo 'No invoice'; exit;}
0 голосов
/ 29 марта 2012

Вы действительно передаете данные счета в строке запроса URL?Вот для чего $ _GET.Если вы отправляете данные из формы, используйте вместо этого $ _POST.

Если это не поможет, попробуйте print_r($_GET) и убедитесь, что данные действительно передаются так, как вы ожидаете, и под правильным именем переменной.

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