Foros del Web » Programando para Internet » PHP »

no se porque me da error en mi scripts

Estas en el tema de no se porque me da error en mi scripts en el foro de PHP en Foros del Web. esta es una funcion para approbar una transacion y quiero agregar un pequño detalle pero no encuentro en que lado meterlo function extraer($cadena){ $cad = ...
  #1 (permalink)  
Antiguo 19/12/2011, 16:30
 
Fecha de Ingreso: octubre-2006
Mensajes: 128
Antigüedad: 17 años, 6 meses
Puntos: 0
Exclamación no se porque me da error en mi scripts

esta es una funcion para approbar una transacion y quiero agregar un pequño detalle pero no encuentro en que lado meterlo


function extraer($cadena){
$cad = substr($cadena,61,10);
return $cad;
}
/*Recepcion de vaariiables del Banco*/
$total=$_POST['total'];
$Resp="APPROVED";
echo "$total";

switch ($Resp) {
case "APPROVED":

$comando="java -Djava.library.path/Digest/lib/ -classpath /Digest/:/home/Digest/classes Digest $total ";
$op=shell_exec($comando);
$cdigest=extraer($op);
echo $cdigest;
if ($digest=cdisget){
echo "Transaccion COMPLETADA <br />";
echo "Numero de Referencia: $refnun <br />";
ELSE
echo "Error en la comunicacion de la transaccion y la misma estara en observacion";
break;
case "ABORTED":
echo "Transaccion cancelada a petición del usuario";
break;
case "DENIED":
echo "RECHAZADA";
break;
case "WRONG ":
echo "RECHAZADA";
break;
}



quiero agregar este pequeño scripts donde es aprobada la transacion :

transaction(
-1,
$uid,
$post['amount']+$post['fees'],
$post['fees'],
1,
0,
' Deposito',
);
  #2 (permalink)  
Antiguo 19/12/2011, 16:39
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: no se porque me da error en mi scripts

La verdad no se entiende tu problema, dices que algo te da error pero no dices que error recibes.

Además si tu no sabes donde meter lo que dices ¿como esperas que nosotros adivinemos el lugar donde debería?

Intenta explicar mas a detalle tu problema, de verdad nada cuesta saberse explicar.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 20/12/2011, 09:09
 
Fecha de Ingreso: octubre-2006
Mensajes: 128
Antigüedad: 17 años, 6 meses
Puntos: 0
Exclamación Respuesta: no se porque me da error en mi scripts

Cierto disculpame; mi problema es cuando intento agregar estas lineas:

transaction(
-1,
$uid,
$post['amount']+$post['fees'],
1,
0,
' Deposito',
);


aqui el cual supongo que es aqui donde ejecuta cuando es exitosa la transacion:


switch ($Resp) {

case "APPROVED":
$comando="java -";
$op=shell_exec($comando);
$cdigest=extraer($op);
echo $cdigest;
if ($digest=cdisget){
echo "Transaccion COMPLETADA <br />";
}
ELSE


Ejemplo:

switch ($Resp) {

case "APPROVED":

transaction(
-1,
$uid,
$post['amount']+$post['fees'],
1,
0,
' Deposito',
);


$comando="java -";
$op=shell_exec($comando);
$cdigest=extraer($op);
echo $cdigest;
if ($digest=cdisget){
echo "Transaccion COMPLETADA ";
}
ELSE

me da algun tipo de error al cerrar el parentesis )
habra otra forma de escribirla sin que me presente ese error?
  #4 (permalink)  
Antiguo 20/12/2011, 09:12
Avatar de Eleazan  
Fecha de Ingreso: abril-2008
Ubicación: Ibiza
Mensajes: 1.879
Antigüedad: 16 años
Puntos: 326
Respuesta: no se porque me da error en mi scripts

¿Qué tipo de error? ¿Qué dice el mensaje de error?

PD:
Código PHP:
if ($digest=cdisget){ //Aqui estás ASIGNANDO, no COMPARANDO. Si quieres comparar, se usa == no = 
__________________
>> Eleazan's Source
>> @Eleazan
  #5 (permalink)  
Antiguo 20/12/2011, 10:33
 
Fecha de Ingreso: octubre-2006
Mensajes: 128
Antigüedad: 17 años, 6 meses
Puntos: 0
Respuesta: no se porque me da error en mi scripts

me da errores de syntax error, unexpected

como puedo hacer estas lineas que sean ejecutadas? con un "echo" o con "if" al momento que sea exitosa la transacion:

transaction(
-1, $uid,
$post['amount'],
1,
0,
' Deposito'
);


aqui cuando es aprobada

switch ($Resp) {
case "APPROVED":
  #6 (permalink)  
Antiguo 20/12/2011, 13:24
Avatar de truman_truman  
Fecha de Ingreso: febrero-2010
Ubicación: /home/user
Mensajes: 1.341
Antigüedad: 14 años, 2 meses
Puntos: 177
Respuesta: no se porque me da error en mi scripts

deberías pegar aquí el error completo tal como te aparece
__________________
la la la
  #7 (permalink)  
Antiguo 20/12/2011, 13:46
 
Fecha de Ingreso: octubre-2006
Mensajes: 128
Antigüedad: 17 años, 6 meses
Puntos: 0
Respuesta: no se porque me da error en mi scripts

Logre agregarla, el problema era que no habia declarado las variables y quedo tal cual como lo pensaba, pero ahora me corre la funcion "transaction" asi sea aprovada o no

function extraer($cadena){
$cad = substr($cadena,61,10);
return $cad;
}
$total=$_P
$fees=$_SESSION['fees'];
$dtype=$_SESSION['dtype'];
$amount=$_SESSION['amount'];
$Resp="APPROVED";
echo "$total";

switch ($Resp) {
case "APPROVED":
/*aqui agrege la funcion la cual quiero que me funcione solo cuando es aprovada la transacion */
transaction(
-1,
$uid,
$amount,
$fees,
1,
1,
"{$data['DepositMethod'][$dtype]['name']} Depositing"
);

$comando="java -Djava.library.path/Digest/lib/ -classpath /Digest/:/home/Digest/classes Digest $total ";
$op=shell_exec($comando);
$cdigest=extraer($op);
echo $cdigest;
if ($digest==cdisget){
echo "Transaccion COMPLETADA <br />";
echo "Numero de Referencia: $refnun <br />";
ELSE
echo "Error en la comunicacion de la transaccion y la misma estara en observacion";
break;
case "ABORTED":
echo "Transaccion cancelada a petición del usuario";
break;
case "DENIED":
echo "RECHAZADA";
break;
case "WRONG ":
echo "RECHAZADA";
break;




lo que quiero es que funcione solo cuando es APPROVED no para los demas casos
cuando estas son RECHAZADA
  #8 (permalink)  
Antiguo 20/12/2011, 14:06
 
Fecha de Ingreso: octubre-2006
Mensajes: 128
Antigüedad: 17 años, 6 meses
Puntos: 0
Respuesta: no se porque me da error en mi scripts

cuando la transacion es aprobada el me regresa dos valores en las variables que son $refnun y $authnum solo cuando es aprobada, ysi es rechazadas los valores vienen vacios.
como puedo hacer para que cuando los valores se regresen de manera aprobada me ejecute el comando

transaction(
-1,
$uid,
$amount,
$fees,
1,
1,
"{$data['DepositMethod'][$dtype]['name']} Depositing"
);

creo que es la forma mas facil de hacerlo, quien me puede dar una idea
  #9 (permalink)  
Antiguo 20/12/2011, 14:09
Avatar de Eleazan  
Fecha de Ingreso: abril-2008
Ubicación: Ibiza
Mensajes: 1.879
Antigüedad: 16 años
Puntos: 326
Respuesta: no se porque me da error en mi scripts

Veamos, el switch no te funciona pq tienes esto un poco antes:
Código PHP:
$Resp="APPROVED"
Siempre será "APPROVED", sea el resultado que sea, ya que estás asignándola manualmente.

PD: Acostúmbrate a usar la herramienta Highlight del foro!
__________________
>> Eleazan's Source
>> @Eleazan
  #10 (permalink)  
Antiguo 20/12/2011, 14:15
 
Fecha de Ingreso: octubre-2006
Mensajes: 128
Antigüedad: 17 años, 6 meses
Puntos: 0
Respuesta: no se porque me da error en mi scripts

ok en que linea cres que pueda colocar el switch para que me trabaje cuando es rechazada la funcion, y repecto a lo otro que comando puedo hacer para que me funcione el "transaction" cuando esta regresa los valores full osea cuando es aprobada? lo he intentado todo y ya no doy para mas : (
  #11 (permalink)  
Antiguo 20/12/2011, 14:28
 
Fecha de Ingreso: octubre-2006
Mensajes: 128
Antigüedad: 17 años, 6 meses
Puntos: 0
Respuesta: no se porque me da error en mi scripts

$Resp='APPROVED','ABORTED','DENIED';

algo asi?
  #12 (permalink)  
Antiguo 20/12/2011, 14:35
Avatar de Eleazan  
Fecha de Ingreso: abril-2008
Ubicación: Ibiza
Mensajes: 1.879
Antigüedad: 16 años
Puntos: 326
Respuesta: no se porque me da error en mi scripts

Cita:
Iniciado por jeshua3001 Ver Mensaje
$Resp='APPROVED','ABORTED','DENIED';

algo asi?
No, eso daria error (a parte de que sería incorrecto igual).

Te estás dejando algo fundamental.

Yo no sé qué carajos recibes por $_SESSION, por $_POST, o lo que sea.

Supongo q algun parámetro será si la transaccion es aprobada, denegada, o rechazada. Eso deberías saberlo tú. Con el código que das, no tenemos ni idea de lo uno, ni de lo otro.

Podrías poner un

Código PHP:
echo '<pre>';
print_r($_SESSION);
print_r($_POST);
echo 
'</pre>';
die(); 
Para así saber que contienen esas variables. Tampoco conocemos el funcionamiento de transaction (a todas luces, una función propia). Así es complicado poder ayudarte, sólo podemos dar palos de ciego.

Así, pues, explícate bien, dí los pasos que se supone q hace el script, los datos que recibe (puedes copiar/pegar el trozo de codigo que te he dado, así los veremos), y, te vuelvo a decir, que por favor, cuando pongas código, usa la herramienta de highlight del foro (cuando escribes, arriba, a la derecha, donde están todos los botones de formato hay una pequeña lista q pone Highlight. Seleccionas el código, le das a Highlight y eliges el idioma que pertoca!)

Un saludo

PD: De todas formas, parece q no has toqueteado mucho php (o hoy tienes un día muy espeso). Te recomiendo empezar desde el principio... sino, dando palos de ciego, es muy complicado! Que si sigues posteando, voy a intentar ayudarte igual, esta PD no es para que te la tomes a mal... sino para que sepas, que empezar una casa por el tejado, es complicado! (Aunq no imposible!)
__________________
>> Eleazan's Source
>> @Eleazan
  #13 (permalink)  
Antiguo 20/12/2011, 15:16
 
Fecha de Ingreso: octubre-2006
Mensajes: 128
Antigüedad: 17 años, 6 meses
Puntos: 0
Respuesta: no se porque me da error en mi scripts

Los parametros:
Código PHP:
Ver original
  1. $refnun=$_POST['refnun'];
  2. $authnum=$_POST['authnum'];
son recibidos atraves del metodos post cuando la transacion se realizo con exito, son los numero de referencia y luego me abre el scripts


este es realmente el codigo lo demas es un comando para validar un digest

Código PHP:
Ver original
  1. function extraer($cadena){
  2.     $cad = substr($cadena,61,10);    
  3.     return $cad;
  4. }
  5. $refnun=$_POST['refnun'];
  6. $authnum=$_POST['authnum'];
  7. $Resp="APPROVED";
  8.  
  9. switch ($Resp) {
  10.     case "APPROVED":
  11.        
  12.              echo "Referencia: $refnun <br />";
  13.              echo "transaccion: $authnum <br />";}
  14.         ELSE
  15.              echo "Error en la comunicacion de la transaccion y la misma estara en observacion";
  16.         break;
  17.     case "ABORTED":
  18.         echo "Transaccion cancelada a petición del usuario";
  19.         break;
  20.     case "DENIED":
  21.    
  22.         echo "Transaccion RECHAZADA";
  23.         break;
  24.     case "WRONG DIGEST":
  25.         echo "Transaccion RECHAZADA";
  26.         break;    
  27. }

cual es la forma correcta de escribir los valores del switch
Código PHP:
Ver original
  1. $Resp="";
para que este lea cuando es APPROVED, ABORTED, DENIED
  #14 (permalink)  
Antiguo 20/12/2011, 15:21
 
Fecha de Ingreso: octubre-2006
Mensajes: 128
Antigüedad: 17 años, 6 meses
Puntos: 0
Respuesta: no se porque me da error en mi scripts

o en su defecto que comando puedo agregar para que me corra esta linea
Código PHP:
Ver original
  1. o en su defecto cual seria el comando para que al recibir los valores  a traves de post[HIGHLIGHT="PHP"]
  2. $refnun=$_POST['refnun'];
  3. $authnum=$_POST['authnum'];
me ejecute la siguiente linea de comando
Código PHP:
Ver original
  1. transaction(
  2.         -1,
  3.         $uid,
  4.         $amount,
  5.         $fees,
  6.         1,
  7.         1,
  8.         "Depositing"
  9.     );
[/HIGHLIGHT]
cuando me regresa los valores
Código PHP:
Ver original
  1. $refnun=;
  2. $authnum=;
que se supondria que ya la transacion fue exitosa anteriormente
  #15 (permalink)  
Antiguo 20/12/2011, 15:23
Avatar de Eleazan  
Fecha de Ingreso: abril-2008
Ubicación: Ibiza
Mensajes: 1.879
Antigüedad: 16 años
Puntos: 326
Respuesta: no se porque me da error en mi scripts

Eso, querido, deberías saberlo tu.

¿Q condiciones tiene un APPROVED? ¿Un ABORTED? ¿Un DENIED?.

Deduzco, por lo q dices, que la transaccion YA se ha realizado (con su resultado correspondiente). Supongo que esta será la que se encarga de darte la respuesta de cómo ha ido.

Insisto, para ver los datos que recibes por post, haz
Código PHP:
echo '<pre>';
print_r($_POST);
echo 
'</pre>'
(puedes ponerlo antes del switch)


Edit: Si dependes de authnum y refnum puedes hacer algo así
Código PHP:
if(isset($_POST['authnum']) && isset($_POST['refnum'])) {
    
//Authnum y refnum tienen valor, aqui harias la transaccion digest, o lo q sea
}
else {
    
//Authnum y refnum no tienen valor

__________________
>> Eleazan's Source
>> @Eleazan
  #16 (permalink)  
Antiguo 20/12/2011, 15:43
 
Fecha de Ingreso: octubre-2006
Mensajes: 128
Antigüedad: 17 años, 6 meses
Puntos: 0
Respuesta: no se porque me da error en mi scripts

si claro ya la transacion se ha realizado, ya viene con su resultado.
el scripts que muestro anteriormente es lo que mostrara dependiendo del resultado que venga si fue a probada o denegada etc
esto es lo que me muestra por post
Código HTML:
Ver original
  1. Array
  2. (
  3.    
  4.    
  5.     [order] => 20111220183345
  6.     [order] => 20111220183345
  7.     [total] => 2220
  8.     [digest] =>
  9.     [cc_name] => Jeshua
  10.     [cc_cedula] => 123456789
  11.     [cc_type] => VISA
  12.     [cc_number] => 4560356925870529
  13.     [cc_cvv] => 289
  14.     [cc_expmonth] => 05
  15.     [cc_expyear] => 2015
  16.    
  17.     [quotas_payment] =>
  18.     [quotas_query] => false
  19.     [exfin_quotas] =>
  20.     [Respuesta] => ABORTED
  21. )
  #17 (permalink)  
Antiguo 20/12/2011, 15:50
 
Fecha de Ingreso: octubre-2006
Mensajes: 128
Antigüedad: 17 años, 6 meses
Puntos: 0
Respuesta: no se porque me da error en mi scripts

ahora lo que ya no se es como adaptar el scripts
hacer que el switch me envie como fue procesada, si fue aprobada me muestre
Cita:
case "APPROVED":
echo "Referencia: $refnun <br />";
echo "transaccion: $authnum <br />";}
si fue rechazada
Cita:
case "DENIED":

echo "Transaccion RECHAZADA";
y asi todo como lo ecribo en esta linea
Código PHP:
Ver original
  1. $Resp="APPROVED";
  #18 (permalink)  
Antiguo 20/12/2011, 15:53
 
Fecha de Ingreso: octubre-2006
Mensajes: 128
Antigüedad: 17 años, 6 meses
Puntos: 0
Respuesta: no se porque me da error en mi scripts

quiero decir como configuro en esta linea?
Cita:
1.$Resp="APPROVED";
  #19 (permalink)  
Antiguo 20/12/2011, 16:10
 
Fecha de Ingreso: octubre-2006
Mensajes: 128
Antigüedad: 17 años, 6 meses
Puntos: 0
Respuesta: no se porque me da error en mi scripts

ahh ya creo que lo soluciones
Cita:
$Resp=$_POST['Respuesta'];
el valor siempre iva a ser el mismo
me di cuenta por
Cita:
echo '<pre>';
print_r($_POST);
echo '</pre>';
voy a probar
  #20 (permalink)  
Antiguo 20/12/2011, 16:22
 
Fecha de Ingreso: octubre-2006
Mensajes: 128
Antigüedad: 17 años, 6 meses
Puntos: 0
Respuesta: no se porque me da error en mi scripts

gracias por sus respuesta...
  #21 (permalink)  
Antiguo 21/12/2011, 02:07
Avatar de Eleazan  
Fecha de Ingreso: abril-2008
Ubicación: Ibiza
Mensajes: 1.879
Antigüedad: 16 años
Puntos: 326
Respuesta: no se porque me da error en mi scripts

Sí, supongo q sería ese el valor que tenías que pillar para el switch :)
__________________
>> Eleazan's Source
>> @Eleazan

Etiquetas: scripts, usuarios
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 10:21.