|
|
|
| Подскажите дома на моём сервере работает вот такой запрос print"<img src=thumb.php?id=$afl$file style='border:dotted 1 silver;width:75;height:100;'></a>\n"; вызывает функцию уменьшающуюся изображение , перенёс на другой сервер тот же Апач PHP 5.2 не работает ! Ошибок не выдаёт ! В чём может быть поблема !? | |
|
|
|
|
|
|
|
для: Dmitriy76
(11.12.2007 в 21:51)
| | Если ваш скрипт использует библиотеку GDlib. То на другом сервере может быть не подключена эта библиотека и скрипт не работает. Посмотрите в файле php.ini чтоб были убраны коментарии перед extension=php_gd2.dll, а если нет доступа к php.ini. то с помошью phpinfo();. | |
|
|
|
|
|
|
|
для: Staglu
(11.12.2007 в 21:56)
| | Вот что у меня по phpinfo
gd
GD Support enabled
GD Version 2.0 or higher
FreeType Support enabled
FreeType Linkage with freetype
FreeType Version 2.3.5
T1Lib Support enabled
GIF Read Support enabled
GIF Create Support enabled
JPG Support enabled
PNG Support enabled
WBMP Support enabled
У меня подозрения на вызов функции img src=thumb.php?id=$afl$file даже если я вставлю img src=thumb1.php?id=$afl$file ошибки не будет а на домашнем ругается . В чём проблема? | |
|
|
|
|
|
|
|
для: Dmitriy76
(11.12.2007 в 22:26)
| | на хостинге заблокирован вывод ошибок. Поэтому Вы их и не видите. Ошибка же явно не в этой строке - это всего лишь вызов - а внутри этого (а может быть и не только этого) файла. | |
|
|
|
|
|
|
|
для: Trianon
(11.12.2007 в 22:30)
| | На хостинге ошибки не заблокированы ! Это 100% Но работать не хочет!? | |
|
|
|
|
|
|
|
для: Dmitriy76
(11.12.2007 в 23:04)
| | А на реальном хосте вы получаете параметры запроса? | |
|
|
|
|
|
|
|
для: sim5
(11.12.2007 в 23:08)
| | А как проверить? | |
|
|
|
|
|
|
|
для: Dmitriy76
(11.12.2007 в 23:20)
| | print_r($_GET); сразу по принятию запроса. Вы должны увидеть массив переданных ключей и их значений. Вы как пулачете значения переменных строки запроса? | |
|
|
|
|
|
|
|
для: sim5
(11.12.2007 в 23:24)
| | На обоих серверах получаю Array ( ) | |
|
|
|
|
|
|
|
для: Dmitriy76
(11.12.2007 в 23:34)
| | Ну ничего и не будет выполнено, если условие определяется по получению id, вы как его получаете, как $_GET['id'] ?
PS. Как на обоих, на локальном и реальном? Вы же сообщали, что на локальном у вас работает. | |
|
|
|
|
|
|
|
для: sim5
(11.12.2007 в 23:39)
| | Скорее всего register_globals на реальном :) | |
|
|
|
|
|
|
|
для: Faraon
(11.12.2007 в 23:42)
| | Вот я такого же мнения, только почему массив в двух случаях пустой, может не там получает его товарищ. :) | |
|
|
|
|
|
|
|
для: Faraon
(11.12.2007 в 23:42)
| | Совсем запутался я после строки print"<img src=thumb.php?id=$afl$file style='border:dotted 1 silver;width:75;height:100;'></a>\n";
Дописал print_r($_GET);
На неё был получен ответ Array ( )
И на компе где скрипт работает и на компе где не хочет!
Прочитал статью http://phpfaq.ru/globals там говорится о PHP выше 4.1 у меня на обоих 5.2 | |
|
|
|
|
|
|
|
для: Dmitriy76
(11.12.2007 в 23:47)
| | Вы должны дополнить print_r($_GET); свой сценарий в котором обрабатываете эту строку запроса, то есть, после запроса thumb.php?id=$afl$file, print_r($_GET) выдаст содержимое полученного массива. Если не получите, то скорее всего у вас register_globals. Вы так и не ответили как вы получаете переменные из запросов. | |
|
|
|
|
|
|
|
для: sim5
(11.12.2007 в 23:52)
| | Кудаж его запрос вставить там у меня вывод Вставляю print_r($_GET['id']); Ниже строки запроса пишет нет такой переменной ID ! Чего делоть то? | |
|
|
|
|
|
|
|
для: Dmitriy76
(12.12.2007 в 00:00)
| | >Кудаж его запрос вставить там у меня вывод
А зачем тогда она у вас в запросе?
Короче, скорее всего у вас причина заключается в разнличных установках rgister_globals. Если вы к переменным запроса ображаетесь как, например:
if ($id)... , то при rgister_globals = on на локальном сервере у вас все будет ОК. Но если на реальном сервере rgister_globals = off, то вы должны обращаться к переменным как $_GET['varName'], $_POST['varName']... Проверьте это. | |
|
|
|
|
|
|
|
для: sim5
(12.12.2007 в 00:05)
| | Спасибо всем !!!!
Вопрос решен проблема была в register_globals=off
Теперь бы разобраться как запросы выковыривать! | |
|
|
|
|
|
|
|
для: Dmitriy76
(12.12.2007 в 00:16)
| | На реальном сервере? Тогда не радуйтесь, а лучше перепишите свои скрипты с учетом register_globals=off | |
|
|
|
|
|
|
|
для: sim5
(12.12.2007 в 00:17)
| | Я не могу понять как вставить в строку правильный запрос print"<img src=thumb.php?id=$afl$file style='border:dotted 1 silver;width:75;height:100;'></a>\n"; | |
|
|
|
|
|
|
|
для: Dmitriy76
(12.12.2007 в 00:21)
| |
<?
print"<img src=\"thumb.php?id=$afl$file\" style=\"border:dotted 1 silver;width:75;height:100;\"></a>\n";
|
| |
|
|
|
|
|
|
|
для: sim5
(12.12.2007 в 00:25)
| | Не работает !? | |
|
|
|
|
|
|
|
для: Dmitriy76
(12.12.2007 в 12:09)
| | Что не работает? | |
|
|
|
|
|
|
|
для: sim5
(12.12.2007 в 12:15)
| | Я так понял что нужно вместо ID использовать $_GET['id'] Ну и прописал print"<img src=thumb.php?"$_GET['id']"=$afl$file style=border:dotted 1 silver;width:75;height:100;'></a>\n";
И нарываюсь на ошибку ! syntax error, unexpected T_VARIABLE | |
|
|
|
|
|
|
|
для: Dmitriy76
(12.12.2007 в 12:28)
| |
print"<img src=thumb.php?".$_GET['id']."=$afl$file style=border:dotted 1 silver;width:75;height:100;'></a>\n";
|
| |
|
|
|
|
|
|
|
для: Dmitriy76
(12.12.2007 в 12:28)
| | Вы спрашивали - "Я не могу понять как вставить в строку правильный запрос"...
Вставлять так:
//например
$afl = 'th';
$file = 12;
//то после выполнения
print"<img src=\"thumb.php?id=$afl$file\" style=\"border:dotted 1 silver;width:75;height:100;\"></a>\n";
//на странице будет ссылка с url src="thumb.php?id=th12"
|
Вот в скрипте thumb.php получив $_GET['id'], вы узнаете, что оно равно th12. А вот для чего вам это надо в вашем скрипте, где и что вы пытаетесь получить, мне не ведомо. Вставлять "от фонаря" в src $_GET['id'], это вообще не понятно для чего. | |
|
|
|
|
|
|
|
для: sim5
(12.12.2007 в 12:38)
| | Вот прочитал статейку в которой сказано "Начиная с PHP 4.2.0, значение директивы register_globals по умолчанию установлено в off (отключено). Это большое изменение в PHP. Положение register_globals в off делает предопределенные переменные доступными в глобальной области видимости. Например, чтобы получить DOCUMENT_ROOT, вам необходимо будет использовать $_SERVER['DOCUMENT_ROOT'] вместо $DOCUMENT_ROOT, или $_GET['id'] из URL http://www.example.com/test.php?id=3 вместо $id, или $_ENV['HOME'] вместо $HOME."
Строка print"<img src=\"thumb.php?id=$afl$file\" style=\"border:dotted 1 silver;width:75;height:100;\"></a>\n";
На экране пусто
Функция thumb.php возвращает уменьшеную копию изображения ! | |
|
|
|
|
|
|
|
для: Dmitriy76
(12.12.2007 в 12:55)
| | приведите код thumb.php | |
|
|
|
|
|
|
|
для: KPETuH
(12.12.2007 в 13:18)
| | Привожу
<?php
//Ф-ия возвращает уменьшенную копию изображения. И вызывается в фомате
//thumb.php?id=путь_к_рисунку, так же можно задать размеры, или только высоту, тогда
//картинка уменьшится сохранив пропорции. Скрипт понимает такие форматы изображения как gif,jpeg,png
//а возвращает в формате jpeg.Из html вызывать ф-ию нужно так <img src=thumb.php?id=путь_к_рисунку>
// список параметров thumb(путь_к_рисунку, ширина,высота)
function thumb($path,$x,$y=0)
{
$t=getimagesize ($path) or die('unknown type of image');
$with=$t[0];
$height=$t[1];
switch ($t[2])
{
case 1:
$type='gif';
$img=imagecreatefromgif($path1);
break;
case 2:
$type='jpeg';
$img=imagecreatefromjpeg($path);
break;
case 3:
$type='png';
$img=imagecreatefrompng($path);
break;
}
if($y==0)
{$y=$x*($height/$with);}
header("content-type: image/".$type);
$thumb=imagecreatetruecolor($x,$y);
imagecopyresized($thumb,$img,0,0,0,0,$x,$y,$with,$height);
$thumb=imagejpeg($thumb);
return $thumb;
}
if($id)
{
echo thumb($id,200);
}
?> | |
|
|
|
|
|
|
|
для: Dmitriy76
(12.12.2007 в 13:34)
| | попробуйте вместо
<?
if ($id)
{
echo thumb($id,200);
}
|
написать
<?
if (!empty($_GET['id']))
{
echo thumb($_GET['id']),200);
}
|
вы просто опять забыли про глобальные переменные :) | |
|
|
|
|
|
|
|
для: Dmitriy76
(12.12.2007 в 13:34)
| | Разобрался
if($_GET['id'])
{
echo thumb($_GET['id'],200); | |
|
|
|