Spanish Consulta My Sql

agares

New Member
Gente, como estan?
tengo un problema con el siguiente codigo

Sub Process_Globals
Dim hc As HttpClient
End Sub

Sub Globals
Dim EditText1, EditText2 As EditText
Dim id_producto, codproducto, datos As String
End Sub

Sub Activity_Create(FirstTime As Boolean)
If FirstTime Then
hc.Initialize("hc")
End If
Activity.LoadLayout("pruebamysql") ' Cargamos el Designer
End Sub

Sub Activity_Resume

End Sub

Sub Activity_Pause (UserClosed As Boolean)

End Sub

Sub Button1_Click

id_producto = EditText1.Text
codproducto = EditText2.Text
datos="http://192.168.198.129/insertaprod.php?id_producto=" & id_producto & "&codproducto=" & codproducto
Dim req As HttpRequest
req.InitializeGet(datos)
hc.Execute(req, 1)
End Sub

Sub hc_ResponseSuccess (Response As HttpResponse, tarea As Int)
Dim resultString As String
resultString = Response.GetString("UTF8")

Msgbox("Los datos han sido almacenados", "Éxito de operación")
End Sub

Sub hc_ResponseError (Response As HttpResponse, Reason As String, StatusCode As Int, tarea As Int)
Log("Error: " & Reason & ", StatusCode: " & StatusCode)
If Response <> Null Then
Log(Response.GetString("UTF8"))
Response.Release
End If
End Sub

No entra al sub hc_ResponseSuccess. La página a la que estoy llamando (http://192.168.198.129/insertaprod.php?id_producto=" & id_producto & "&codproducto=" & codproducto) para hacer el insert funciona bien porque cambio las variables por valores y los inserta en la base.

Espero que me puedan ayudar

Gracias y Saludos!!!
 

pilbazan

Member
Licensed User
Longtime User
Gente, como estan?
tengo un problema con el siguiente codigo

.......

No entra al sub hc_ResponseSuccess. La página a la que estoy llamando (http://192.168.198.129/insertaprod.php?id_producto=" & id_producto & "&codproducto=" & codproducto) para hacer el insert funciona bien porque cambio las variables por valores y los inserta en la base.

Espero que me puedan ayudar

Gracias y Saludos!!!



Hola,
He probado la rutina como la has escrito y funciona perfectamente, lo que me hace pensar que quizás el problema esté en tu pagina php que no devuelva el estado OK.

Te comento que hice:
a) generé una página insertaprod.php y la subí a uno de mis dominios para que escriba los datos que pase por la url en una base de datos.
b) Probé la url con 2 datos inventados (insertaprod.php?id_producto=test1&codproducto=test2) y metió los datos en la bbdd correctamente.
c) Hice una mini aplicación B4A muy similar a la tuya y allí puse 2 EditText y al pulsar enviar envió los datos correctamente y los insertó en la BBDD.

Todo esto me hace pensar que es el PHP el que devuelve algún error quizás...
Pruebalo con una página muy simple...


Mi pagina PHP es algo así como lo que pongo ahora

PHP:
<?php
// Por PIL - 3/04/2013
$VISITAS_EST_a=$_SERVER['REQUEST_URI'];

if($_SERVER["HTTP_X_FORWARDED_FOR"]){
      $VISITAS_EST_c=$_SERVER["HTTP_X_FORWARDED_FOR"];
      }else{
      $VISITAS_EST_c=$_SERVER["REMOTE_ADDR"];
      }
$VISITAS_EST_d= isset($_SERVER['HTTP_REFERER'])?$_SERVER['HTTP_REFERER']:null;

//capturamos datos de la url
$id_producto = $_GET["id_producto"];
$codproducto = $_GET["codproducto"];



//Conexion con BBDD y posterior insert de datos
$VISITAS_link = mysql_connect("xxxxxx.1and1.es", "dboUSUARIO", "PASS");
mysql_select_db("dbNAME",$VISITAS_link);
mysql_query("INSERT INTO `visitas` (`url_visitada`, `fecha`, `ip`, `url_procedencia`, `lugar_procedencia`, `euros`) VALUES ('$VISITAS_EST_a', 'hoy', '$VISITAS_EST_c', '$VISITAS_EST_d', '$id_producto','$codproducto')");


echo "<FONT FACE='verdana, times, serif' SIZE=3 COLOR=black>";
echo "<title>PRUEBA SQL - by PIL</title>";
echo "-------------------------------------------------------------------<br>";
echo "<b>Resultado de id_producto: </b> $id_producto <br>";
echo "<b>Resultado de codproducto: </b> $codproducto <br>";
echo "-------------------------------------------------------------------<br>";


?>


Dime si te ha servido. Sino, la única diferencia con tu código es que yo he cargado antes el Layout, pero el resto está igual!!

Sub Activity_Create(FirstTime As Boolean)
'Do not forget to load the layout file created with the visual designer. For example:
Activity.LoadLayout("main")
If FirstTime Then
hc.Initialize("hc")
End If

End Sub


Saludos!
 
Top