Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Otros entornos y lenguajes > PHP
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 23-01-2007
GabberMan GabberMan is offline
Registrado
 
Registrado: ene 2007
Posts: 6
Poder: 0
GabberMan Va por buen camino
Hola de nuevo, lo siento, pero es que no tenía el código a mano cuando escribí el post...

El código es el siguiente:
Código PHP:
<?php
include "connect.php";
header("Content-type: image/png");
$ide $_GET['id'];

$im    imagecreatefrompng("images/image.png");
$orange imagecolorallocate($im22021060);
$px    = (imagesx($im) - 7.5 strlen($ide)) / 2;

$query mysql_query("SELECT * FROM table WHERE id =".$ide);

while(
$row mysql_fetch_array($query)) {
    
$txt $row[nombre];
    }

imagestring($im3$px9$txt$orange);
imagepng($im);
imagedestroy($im);

?>
Dentro del while se cogerían más elementos de la tabla, pero aquí lo he puesto más simplificado.

Gracias de nuevo!

edito:
El error que me sale es:
No se puede mostrar la imagen "URL" porque contiene errores

en cambio el código con el GET si que funciona, y es este:
Código PHP:
<?php

header
("Content-type: image/png");
$string $_GET['text'];
$im    imagecreatefrompng("signtargs/image.png");
$orange imagecolorallocate($im22021060);
$px    = (imagesx($im) - 7.5 strlen($string)) / 2;
imagestring($im3$px9$string$orange);
imagepng($im);
imagedestroy($im);

?>

Última edición por GabberMan fecha: 23-01-2007 a las 22:40:33.
Responder Con Cita
  #2  
Antiguo 23-01-2007
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Verifica el contenido de $txt, ¿qué es lo que realmente mandas a imagestr?

Te lo digo porque es posible que se esté metiendo "ruido". Hice una prueba similar a lo tuyo y primero no obtuve ningún error, pero me fijé que en tu ciclo while la variable $txt siempre se reasigna perdiéndose el valor anterior. Imagino que es una errata y en realidad estás concatenando al valor anterior:

Código PHP:
$txt .= $row[nombre]; 
Pero cuando hice esa modificación, la imagen salió en blanco. Entonces probé que pasaba con $txt haciendo un

Código PHP:
die($txt); 
y vi algo como esto:

Cita:
<br />
<b>Notice</b>: Undefined variable: txt in ....
antes del texto que quería. Y los carcateres especiales son los que meten ruido. Aquí el problema es que $txt no tenía un valor inicial.

Checa. Quizá por ahí esté el problema.

// Saludos
Responder Con Cita
  #3  
Antiguo 23-01-2007
GabberMan GabberMan is offline
Registrado
 
Registrado: ene 2007
Posts: 6
Poder: 0
GabberMan Va por buen camino
Bueno, técnicamente el bucle sólo debe hacer una vuelta, ya que únicamente hay una fila con el id dado. Y si, es una concatenación pero lo he borrado para que el código sea menos largo :P (luego lo he corregido)

El contenido es texto, concretatemente la cadena test, por lo que no se que puede haber de ruido...

¿die($txt); que hace exactamente?

Muchas gracias por tu ayuda, miraré si es por el contenido de $txt

Un Saludo!
Responder Con Cita
  #4  
Antiguo 23-01-2007
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
die es nada más para parar la ejecución y mostrar el texto que le pases.

// Saludos
Responder Con Cita
  #5  
Antiguo 24-01-2007
GabberMan GabberMan is offline
Registrado
 
Registrado: ene 2007
Posts: 6
Poder: 0
GabberMan Va por buen camino
Nunca te acostarás sin saber una cosa más

Gracias por contestar

Un Saludo!
Responder Con Cita
  #6  
Antiguo 25-01-2007
[kayetano] kayetano is offline
Miembro Premium
 
Registrado: may 2003
Ubicación: Elche
Posts: 644
Poder: 22
kayetano Va por buen camino
Hola

Cita:
Empezado por GabberMan
Bueno, técnicamente el bucle sólo debe hacer una vuelta, ya que únicamente hay una fila con el id dado. Y si, es una concatenación pero lo he borrado para que el código sea menos largo :P (luego lo he corregido)
Pues entonces:
Código PHP:
<?
if( $row mysql_fetch_array($query)) {
    
$txt $row['nombre'];
} else {
// Acciones de error
}
?>
Dependiendo de la configuración de tu servidor apache podrás utilizar la sintaxis con comillas o sin comillas en los arrays, es decir $row['nombre'] o $row[nombre], yo siempre utilizo comillas.

Más cosas, te aconsejo que entrecomilles todas los valores en una sentencia SQL.
Código PHP:
<?
$query 
mysql_query("SELECT * FROM table WHERE id ='".$ide."'");
?>
Además no estaría mal que filtraras la variable "$ide" para evitar inyección de código HTML.

Por último, DIE() es un alias de EXIT() y simplemente finaliza el script en curso y como opcional puedes mostrar un mensaje.
Desconozco el porque al gente utilizar una alias antes que la función directa pero asin es la vida.
__________________
Salu2
KAYETANO

Cómo hacer preguntas de manera inteligente
Responder Con Cita
  #7  
Antiguo 25-01-2007
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Cita:
Empezado por kayetano
Desconozco el porque al gente utilizar una alias antes que la función directa pero asin es la vida.
Esteee...Pues en en mi caso porque cuando empecé a programar con php y aún ahora, consulto mucho el manual, en donde muchos ejemplos usan die() en lugar de exit()

// Saludos
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Tratamiento de base de datos con Imagenes zugazua2001 Gráficos 5 25-03-2012 21:12:31
Imagenes en base de datos Esau Gráficos 4 04-02-2007 21:14:43
imagenes en base de datos davidgaldo Varios 0 14-04-2005 16:22:36
Guardar imagenes en una base de datos PTW Varios 1 09-04-2004 14:50:16
FreeReport e imagenes en Base de datos rpadin Impresión 1 24-02-2004 22:13:50


La franja horaria es GMT +2. Ahora son las 13:51:01.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi