Ver Mensaje Individual
  #2 (permalink)  
Antiguo 12/10/2011, 10:42
so1rak
 
Fecha de Ingreso: junio-2011
Mensajes: 11
Antigüedad: 15 años, 3 meses
Puntos: 3
Respuesta: Envió de información desde un telefono movil a una Base de datos

Amigo necesitas hacer una conexion mediante sockets

te dejo parte de mis codigos para que te guies, yo no lo he terminado aun por que no me sale del todo y ayuda en internet no encontre

Código PHP:
package soquete.de.java;

import java.sql.SQLException;
import java.util.logging.Level;
import java.util.logging.Logger;

/**
 *
 * @author So1rak
 */
public class Main {

    
String cte_id, nip, imei, nip_new;
   
    public static 
void main(String[] args) {
        
// TODO code application logic here
        
        
Clases haduken = new Clases();
        try {
            
haduken.haduken();
        } catch (
SQLException ex) {
            
Logger.getLogger(Main.class.getName()).log(Level.SEVERE, null, ex);
        }
       
    }
} 

Código PHP:
package soquete.de.java;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.net.ServerSocket;
import java.net.Socket;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;

/**
 *
 * @author Arnulfo
 */
public class Clases {

    
String cte_id, nip, imei, nip_new, saldito, cambiar_nip, Fuego, Fuego2;
    private 
java.sql.Connection con = null;
    private final 
String url = "jdbc:sqlserver://";
    private final 
String serverName = "192.168.99.55";
    private final 
String portNumber = "1433";
    private final 
String databaseName = "mobiltaim";
    private final 
String userName = "sa";
    private final 
String password = "sa";
    
// Indica al controlador que debe utilizar un cursor de servidor, // lo que permite más de una instrucción activa // en una conexión.
    
private final String selectMethod = "cursor";

    
// Constructor public Connect(){}
    
public String getConnectionUrl() {
        return 
url + serverName + ":" + portNumber + ";databaseName=" + databaseName + ";selectMethod=" + selectMethod + ";";
    }

    public 
java.sql.Connection getConnection() {
        try {
            Class.
forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
            
con = java.sql.DriverManager.getConnection(getConnectionUrl(), userName, password);

            
System.out.println("");
            if (
con != null) {
                
System.out.println("Conexion correcta.");
            }
        } catch (
Exception e) {
            
e.printStackTrace();
            
System.out.println("Error de seguimiento en getConnection() : " + e.getMessage());
        }
        return 
con;
    }

    public 
void compararUsarioyContraseñaParaPoderEntrarAlSistemaMovilDeAndroidParaCargarSaldo() {
        try {
        } catch (
Exception e) {
            
System.out.println("OH!! Error: " + e);
        }
    }

    
/* Mostrar las propiedades del controlador y los detalles de la base de datos */
    
public void displayDbProperties() {
        
java.sql.DatabaseMetaData dm = null;
        
java.sql.ResultSet rs = null;
        try {
            
con = this.getConnection();
            if (
con != null) {
                
dm = con.getMetaData();
                
System.out.println("Informacion del controlador");
                
System.out.println("\tNombre del controlador: " + dm.getDriverName());
                
System.out.println("\tVersion del controlador: " + dm.getDriverVersion());
                
System.out.println("\nInformacion de la base de datos ");
                
System.out.println("\tNombre de la base de datos: " + dm.getDatabaseProductName());
                
System.out.println("\tVersion de la base de datos: " + dm.getDatabaseProductVersion());
                
System.out.println("\n Catalogos disponibles ");
                
rs = dm.getCatalogs();
                while (
rs.next()) {
                    
System.out.println("\tcatalogo: " + rs.getString(1));
                }


                
PreparedStatement consultar = con.prepareStatement("select * from acceso where idLogin = 1");
                
ResultSet resultado = consultar.executeQuery();
                while (
resultado.next()) {
                    
cte_id = resultado.getString("cte_id").toString();
                    
nip = resultado.getString("nip").toString();
                    
imei = resultado.getString("imei").toString();
                }

                
PreparedStatement saldo = con.prepareStatement("select re.saldo_disponible from recarga re join Acceso ac on ac.idLogin = re.id_recarga where ac.idLogin = 1");
                
ResultSet saldodisponible = saldo.executeQuery();
                while (
saldodisponible.next()) {
                    
saldito = saldodisponible.getString("saldo_disponible");
                }

                
rs.close();
                
rs = null;
                
closeConnection();
            } else {
                
System.out.println("Error: No hay ninguna conexion activa");
            }
        } catch (
Exception e) {
            
e.printStackTrace();
        }
        
dm = null;
    }

    private 
void closeConnection() {
        try {
            if (
con != null) {
                
con.close();
            }
            
con = null;
        } catch (
Exception e) {
            
e.printStackTrace();
        }
    }

    public 
void haduken() throws SQLException {
        
ServerSocket serverSocket = null;
        try {
            
serverSocket = new ServerSocket(4445);
            
Socket clientSocket = null;
            
displayDbProperties();

            try {
                while (
true) {
                    
clientSocket = serverSocket.accept();
                    
PrintWriter out = new PrintWriter(
                            
clientSocket.getOutputStream(), true);
                    
BufferedReader in = new BufferedReader(
                            new 
InputStreamReader(
                            
clientSocket.getInputStream()));

                    
out.write("haduken de fuego");
                    
out.flush();
                    
                    
String f = in.readLine();

                    
x:
                    if (
"menu".equals(f)) {

                        
out.write("haciendo login \n");
                        
out.flush();


                        
String ivan = in.readLine();
                        
String ivanA = ivan.substring(0, 2);
                        
String ivanCTE = ivan.substring(2, 7);
                        
String ivanNIP = ivan.substring(7, 12);
                        
String ivanIMEI = ivan.substring(12);


                        
String a = cte_id;
                        
String b = nip;
                        
String c = imei;




                        if (
"20".equals(ivanA)) {
                            
out.write("Accion 20 entro \n");
                            
out.flush();

                            if (
a.equals(ivanCTE)) {
                                
out.write("Accion cliente entro \n");
                                
out.flush();

                                if (
b.equals(ivanNIP)) {
                                    
out.write("Accion nip entro \n");
                                    
out.flush();

                                    if (
c.equals(ivanIMEI)) {

                                        
out.write("Login correcto mil \n");
                                        
out.flush();
                                        
out.write("Siguiente Accion \n");
                                        
out.flush();


                                
                            }
                        }

                    } else {
                        
out.write("ETX18ETX");
                        break;
                    }
                }



            } catch (
IOException e) {
                
System.out.println("Conexion fallida: 4445");
                
System.exit(-1);
            }



        } catch (
IOException e) {
            
System.out.println("No se pudo escuchar el puerto: 4445");
            
System.exit(-1);
        }
    }
} 


y esto va en el android

Código PHP:
try {
            
Socket sock = new Socket("10.0.2.2", 4445);
            
            
        } catch (
UnknownHostException e) {
            
// TODO Auto-generated catch block
            
e.printStackTrace();
        } catch (
IOException e) {
            
// TODO Auto-generated catch block
            
e.printStackTrace();
        }