Foros del Web » Programando para Internet » PHP »

Ejecutar un script en un archivo diferente

Estas en el tema de Ejecutar un script en un archivo diferente en el foro de PHP en Foros del Web. Estoy desarrollando en php una aplicacion donde necesito que si if (isset($_POST['anticipo'])) { Ejecute un script que tengo en otro archivo sin que se note ...
  #1 (permalink)  
Antiguo 17/04/2012, 15:35
 
Fecha de Ingreso: enero-2004
Ubicación: Ocotlan
Mensajes: 57
Antigüedad: 20 años, 4 meses
Puntos: 2
Ejecutar un script en un archivo diferente

Estoy desarrollando en php una aplicacion

donde necesito que si

if (isset($_POST['anticipo'])) {

Ejecute un script que tengo en otro archivo sin que se note nada.. como si lo hiciera en segundo plano y listo..

}
Necesito que sea asi.. por que en realidad va ejecutar 2 script un que esta en el mismo archivo y otro que solo se ejecutara en caso de que este definido $_POST['anticipo']

como puedo hacer esto?
GRacias por la ayuda!
  #2 (permalink)  
Antiguo 17/04/2012, 15:36
Avatar de santris  
Fecha de Ingreso: agosto-2009
Ubicación: Sant Feliu de Llobregat
Mensajes: 955
Antigüedad: 14 años, 9 meses
Puntos: 66
Respuesta: Ejecutar un script en un archivo diferente

usa ajax

saludos
__________________
Tu álbum de cromos online!!
  #3 (permalink)  
Antiguo 17/04/2012, 15:41
 
Fecha de Ingreso: abril-2012
Mensajes: 71
Antigüedad: 12 años
Puntos: 16
Respuesta: Ejecutar un script en un archivo diferente

con include() ?
  #4 (permalink)  
Antiguo 17/04/2012, 15:45
 
Fecha de Ingreso: enero-2004
Ubicación: Ocotlan
Mensajes: 57
Antigüedad: 20 años, 4 meses
Puntos: 2
Respuesta: Ejecutar un script en un archivo diferente

ajax creo q estaria bien lo malo es que no soy bueno en ese lenguaje.. aun no lo domino...

con include estaria bueno... lo malo es que si hago include me imprimiria en la misma ventana lo del otro script

que sugieren
  #5 (permalink)  
Antiguo 17/04/2012, 15:48
 
Fecha de Ingreso: abril-2012
Mensajes: 71
Antigüedad: 12 años
Puntos: 16
Respuesta: Ejecutar un script en un archivo diferente

Cita:
Iniciado por jyopi Ver Mensaje
ajax creo q estaria bien lo malo es que no soy bueno en ese lenguaje.. aun no lo domino...

con include estaria bueno... lo malo es que si hago include me imprimiria en la misma ventana lo del otro script

que sugieren
????

si es puro codigo PHP no te imprime nada...
  #6 (permalink)  
Antiguo 17/04/2012, 15:49
Avatar de mike28gt  
Fecha de Ingreso: abril-2010
Mensajes: 56
Antigüedad: 14 años
Puntos: 14
Respuesta: Ejecutar un script en un archivo diferente

Utiliza Ajax :) y no te creas que es otro lenguaje, es JavaScript asíncrono, si publicas acá lo que quiere hacer te podemos ayudar, sino pues hay muy buenos manuales en Internet.
  #7 (permalink)  
Antiguo 17/04/2012, 15:59
 
Fecha de Ingreso: enero-2004
Ubicación: Ocotlan
Mensajes: 57
Antigüedad: 20 años, 4 meses
Puntos: 2
Respuesta: Ejecutar un script en un archivo diferente

ok va!!

tengo un formulario de inserción de registros donde el scrip lo ejecuta en la misma pagina
<form action="<?php echo $editFormAction; ?>" method="post" name="form1" id="form1">

pero si el usuario en el formulario definio algun dato en el campo anticipo

necesito que me genere un PDF el cual ya tengo el script listo en otro documento...
incluso ni siquiera necesitaria enviar ninguna variable...
por que el otro script corre en base al ultimo registro ingresado en la base de datos...

por eso quiero que al mandar el formulario y ya cuando haya ingresado los registros en la base de datos.. compruebe si se definicio 'anticpo' para poder lanzar el PDF

no se que mas le pueda pasar para que me den una ayudadita
  #8 (permalink)  
Antiguo 17/04/2012, 16:06
 
Fecha de Ingreso: abril-2012
Mensajes: 71
Antigüedad: 12 años
Puntos: 16
Respuesta: Ejecutar un script en un archivo diferente

el mismo script que te procesa el form controla el campo anticipo

osea, al final del script pones:
if isset($_POST['anticipo'] {
ejecuto script
}

almenos por lo que me cuentas creo que se podría resolver asi de simplemente...si no postea el codigo entero del form y del script...
pregunta: si el script que procesa el form es la misma pagina donde el form reside, para que sirve action="<?php echo $editFormAction; ?>" ???
  #9 (permalink)  
Antiguo 17/04/2012, 16:11
Avatar de mike28gt  
Fecha de Ingreso: abril-2010
Mensajes: 56
Antigüedad: 14 años
Puntos: 14
Respuesta: Ejecutar un script en un archivo diferente

Duda, esta variable " $editFormAction" que valor lleva?
  #10 (permalink)  
Antiguo 17/04/2012, 16:14
 
Fecha de Ingreso: abril-2012
Mensajes: 71
Antigüedad: 12 años
Puntos: 16
Respuesta: Ejecutar un script en un archivo diferente

Cita:
Iniciado por mike28gt Ver Mensaje
Duda, esta variable " $editFormAction" que valor lleva?
es lo que pregunté yo con otras palabras...
  #11 (permalink)  
Antiguo 17/04/2012, 16:18
Avatar de mike28gt  
Fecha de Ingreso: abril-2010
Mensajes: 56
Antigüedad: 14 años
Puntos: 14
Respuesta: Ejecutar un script en un archivo diferente

Cita:
Iniciado por prod6 Ver Mensaje
es lo que pregunté yo con otras palabras...
Jajajaja si! mi conexión esta un poco lenta y para cuando respondo ya alguien más a respondido :( jajajaja.
  #12 (permalink)  
Antiguo 17/04/2012, 23:39
 
Fecha de Ingreso: enero-2004
Ubicación: Ocotlan
Mensajes: 57
Antigüedad: 20 años, 4 meses
Puntos: 2
Respuesta: Ejecutar un script en un archivo diferente

Cita:
Iniciado por prod6 Ver Mensaje
osea, al final del script pones:
if isset($_POST['anticipo'] {
ejecuto script
}

almenos por lo que me cuentas creo que se podría resolver asi de simplemente...si no postea el codigo entero del form y del script...
este es el otro script que debe ejecutar...
Código PHP:
<?php require_once('../Connections/noticias.php'); ?>
<?php

setlocale
(LC_TIME'es_MX');

if (isset(
$_GET['folio'])) {
mysql_select_db($database_noticias$noticias);
$query_Recordset1 sprintf("SELECT * FROM cotiza WHERE folio = %s"GetSQLValueString($_GET['folio'], "int"));
$Recordset1 mysql_query($query_Recordset1$noticias) or die(mysql_error());
$row_Recordset1 mysql_fetch_assoc($Recordset1);
$totalRows_Recordset1 mysql_num_rows($Recordset1);    
}
else
{
mysql_select_db($database_noticias$noticias);
$query_Recordset1 "SELECT * FROM cotiza ORDER BY id DESC";
$Recordset1 mysql_query($query_Recordset1$noticias) or die(mysql_error());
$row_Recordset1 mysql_fetch_assoc($Recordset1);
$totalRows_Recordset1 mysql_num_rows($Recordset1);
}

$colname_detalles "-1";
if (isset(
$row_Recordset1['folio'])) {
  
$colname_detalles $row_Recordset1['folio'];
}
mysql_select_db($database_noticias$noticias);
$query_detalles sprintf("SELECT * FROM cotiza_detail WHERE folio = %s"GetSQLValueString($colname_detalles"int"));
$detalles mysql_query($query_detalles$noticias) or die(mysql_error());
$row_detalles mysql_fetch_assoc($detalles);
$totalRows_detalles mysql_num_rows($detalles);
    
dirname(__FILE__).DIRECTORY_SEPARATOR.'temp'.DIRECTORY_SEPARATOR
    
$PNG_WEB_DIR 'temp/';
    include 
"phpqrcode/qrlib.php";      
    if (!
file_exists($PNG_TEMP_DIR))
        
mkdir($PNG_TEMP_DIR);    
    
$filename $PNG_TEMP_DIR.'test.png';
    
$errorCorrectionLevel 'H';
    
$matrixPointSize 2;
    
QRcode::png('http://www.elcapitolio.com.mx/admin/cobranza/cotizacion_folio.php?folio='.$row_Recordset1['folio'], $filename$errorCorrectionLevel$matrixPointSize2);    
          

?>
<?php 
include('../pdfclass/class.ezpdf.php');
function 
puntos_cm ($medida$resolucion=72)
{
   
//// 2.54 cm / pulgada
   
return ($medida/(2.54))*$resolucion;
}
$pdf =& new Cezpdf('Letter');
$pdf->selectFont('../pdfclass/fonts/Courier-Bold.afm');
$datacreator = array (
                    
'Title'=>'Cotización PDF',
                    
'Author'=>'elcapitolio.com.mx',
                    
'Subject'=>'A quien corresponda',
                    
'Creator'=>'[email protected]',
                    
'Producer'=>'http://elcapitolio.com.mx'
                    
);
$pdf->addInfo($datacreator);
$pdf->setColor(255,0,0);
$pdf->addJpegFromFile('../images/facturas/top_cotiza.jpg'puntos_cm(0), puntos_cm(23.2), 613);
$pdf->addText(puntos_cm(19),puntos_cm(27),11,'No. '.$row_Recordset1['folio']);
$pdf->setColor(0,0,0);
$pdf->selectFont('../pdfclass/fonts/Frede.afm');
$pdf->addTextWrap(puntos_cm(10.9),puntos_cm(22.5),280,12,utf8_decode('Ocotlán, Jalisco a '.$fecha=strftime('%e de %B de %Y',strtotime($row_Recordset1['date']))), 'right'0); 
$pdf->selectFont('../pdfclass/fonts/Helvetica.afm');
$pdf->addText(puntos_cm(1),puntos_cm(21.9),10,utf8_decode('Nombre: '.$row_Recordset1['cliente']));
$pdf->addText(puntos_cm(1),puntos_cm(21.4),10,utf8_decode('Domicilio: '.$row_Recordset1['domicilio']));
$pdf->addText(puntos_cm(1),puntos_cm(20.9),10,utf8_decode('Teléfono: '.$row_Recordset1['telefono']));
$pdf->addJpegFromFile('../images/facturas/detalles_r.jpg'puntos_cm(0), puntos_cm(20), 613);

$i=19;
do { 
$pdf->addText(puntos_cm(1),puntos_cm($i),10,$row_detalles['cant']);
$pdf->addText(puntos_cm(3),puntos_cm($i),10,utf8_decode($row_detalles['descripcion']));
$pdf->addText(puntos_cm(19.4),puntos_cm($i),10,number_format($row_detalles['importe'], 2'.'''));
$i=$i-.7;
} while (
$row_detalles mysql_fetch_assoc($detalles));

$pdf->setLineStyle(1);
$pdf->line(puntos_cm(0),puntos_cm($i),puntos_cm(21.5),puntos_cm($i));
$pdf->addText(puntos_cm(3),puntos_cm($i-.6),10,utf8_decode('( '.ucfirst(strtolower(docenumeros($row_Recordset1['total']))).' pesos '.$decimal.'/100 M.N. )'));
$subtotal number_format($row_Recordset1['total'], 2'.''');
$pdf->selectFont('../pdfclass/fonts/Helvetica-Bold.afm');
$pdf->addText(puntos_cm(18.2),puntos_cm($i-.6),10,utf8_decode('Total  $ '.$subtotal));

$pdf->addJpegFromFile('../images/facturas/red.jpg'puntos_cm(0), puntos_cm(3.8), 6135);
$pdf->addPngFromFile($PNG_WEB_DIR.basename($filename), puntos_cm(.5), puntos_cm(.5), 9090);
$pdf->addText(puntos_cm(9),puntos_cm(2.5),11,utf8_decode('Agradeciendo la atención a la presente, quedamos a sus órdenes.'));
$pdf->selectFont('../pdfclass/fonts/Helvetica.afm');
$pdf->setColor(0.5,0.5,0.5);
$pdf->addText(puntos_cm(14.6),puntos_cm(1.6),7,utf8_decode('Las cantidades vertidas en este documento no incluyen iva.'));
$pdf->addText(puntos_cm(16.6),puntos_cm(1.3),7,utf8_decode('Precios sujetos a cambio sin previo aviso.'));
$pdf->addText(puntos_cm(10.2),puntos_cm(1),7,utf8_decode('La información en este documento tiene una vigencia de 15 días después de la fecha de expedición.'));
$pdf->addText(puntos_cm(17.4),puntos_cm(.7),7,utf8_decode('El tiempo de entrega puede variar.'));


$pdf->ezStream();
$pdfcode $pdf->output();
$fp=fopen('pdf/cotizacion'.$row_Recordset1['folio'].'.pdf','wb');
fwrite($fp,$pdfcode);
fclose($fp);
$file fopen("pdf/cotizacion".$row_Recordset1['folio'].".pdf""r"); 
$contenido fread($filefilesize("pdf/cotizacion".$row_Recordset1['folio'].".pdf")); 
$encoded_attach chunk_split(base64_encode($contenido)); 
fclose($file); 
 
$asunto="Se adjunto la cotizacion ".$row_Recordset1['folio']." en PDF"
$email="[email protected]"
$mensaje="Nos ponemos a sus ordenes en el teléfono 01 800 700 2274"
 
$cabeceras "From: Cotizacion elcapitolio.com.mx <[email protected]>\n"
$cabeceras .= "Reply-To: $email\n"
$cabeceras .= "MIME-version: 1.0\n"
$cabeceras .= "Content-type: multipart/mixed; "
$cabeceras .= "boundary=\"Message-Boundary\"\n"
$cabeceras .= "Content-transfer-encoding: 7BIT\n"
$cabeceras .= "X-attachments: cotizacion".$row_Recordset1['folio'].".pdf"
 
$body_top "--Message-Boundary\n"
$body_top .= "Content-type: text/plain; charset=US-ASCII\n"
$body_top .= "Content-transfer-encoding: 7BIT\n"
$body_top .= "Content-description: Mail message body\n\n"
 
$cuerpo $body_top.$mensaje
 
$nombref="cotizacion".$row_Recordset1['folio'].".pdf"
$cuerpo .= "\n\n--Message-Boundary\n"
$cuerpo .= "Content-type: application/pdf; name=\"$nombref\"\n"
$cuerpo .= "Content-Transfer-Encoding: BASE64\n"
$cuerpo .= "Content-disposition: attachment; filename=\"$nombref\"\n\n"
$cuerpo .= "$encoded_attach\n"
$cuerpo .= "--Message-Boundary--\n"
 
mail($email$asunto$cuerpo$cabeceras); 
?>
<?php
mysql_free_result
($Recordset1);
mysql_free_result($detalles);
?>
y pues obviamente esta muy extenso e imprime el pdf en la pagina
  #13 (permalink)  
Antiguo 18/04/2012, 05:31
 
Fecha de Ingreso: abril-2012
Mensajes: 71
Antigüedad: 12 años
Puntos: 16
Respuesta: Ejecutar un script en un archivo diferente

prueba con el include() si no quieres empezar con ajax

Etiquetas: diferente
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 11:01.