Como puedo mostrar una imagen que esta guardada en la base de datos como una ruta en mysql?

Estoy llenando un formulario el cual adjunto una ruta de una foto y posteriormente se guarda en la base datos.

Cuando intento modificar el formulario este me muestra la ruta de la foto, quiero saber si hay una forma de mostrar la foto de esa ruta ya se abajo del formulario o a lado o en algun lugar.

Ese formulario esa una ventana que se dispara a través de un javascript, adjunto el código con el cual traigo esos datos y los muestro en el formulario.

var obtener_data = function (tbody, table){//funcion para mostrar la lista de lo que se va a editar js    $  (tbody).on("click","button.Guardar", function(){    var data = table.row($  (this).parents("tr")).data();     documento = $  ("#formEdit #documento").val(data.empl_doc);    nombres = $  ("#formEdit #nombres").val(data.empl_nom);    apellidos = $  ("#formEdit #apellidos").val(data.empl_ape);    celular = $  ("#formEdit #celular").val(data.empl_cel);    telefono = $  ("#formEdit #telefono").val(data.empl_tel);    direccion = $  ("#formEdit #direccion").val(data.empl_dir);    estado_civil = $  ("#formEdit #estado_civil").val(data.empl_esc);    perfil = $  ("#formEdit #perfil").val(data.empl_perfil);    fecha_ingreso = $  ("#formEdit #fecha_ingreso").val(data.empl_fecha_ing);    fecha_nacimiento = $  ("#formEdit #fecha_nacimiento").val(data.empl_fecha_nac);     foto = $  ("#formEdit #foto").val(data.empl_foto);//con esta linea muestro la ruta de la foto    });  } 

Cómo estructurar esta aplicación de React: Funcionalidad de botones evitando complejidad

Actualmente tengo dos “dos vistas” principales en esta aplicación. Una es <Landing /> que es un componente que muestra que es la pagina principal, y otra es <PreApp /> , que es un componente que forma otros componentes que muestran la segunda página , y que según si se pulsa un botón tienen algunas modificaciones u otras.

class PreApp extends React.Component{   state = { TestIsOn: false }      handleStateUp = (testInOn) => {         this.setState({ TestIsOn: testInOn })     }    render(){     return (       <React.Fragment>         <NavBar />          {this.state.TestIsOn ? <Test /> : <PreTest />}         {this.state.TestIsOn ? <FooterTest /> : <Footer handleStateUp={this.handleStateUp} />}         </React.Fragment>     );   } }  class App extends React.Component{   state = {ButtonClicked: false}    handleSubmit = (ButtonClicked) => {     this.setState({ ButtonClicked: ButtonClicked })   }   render(){     return (       <div className="App">         {this.state.ButtonClicked ? <PreApp /> : <Landing handleSubmit={this.handleSubmit} />}       </div>     )   } }  export default App;

No estoy nada contento como actualmente está estructurada la aplicación, porque la funcionalidad de los botones está ahora mismo anclada a “condicionales”. A mi me gustaría que simplemente funcionasen con un “simple “onClick” te llevasen a x componente.

Ahora mismo el problema que quería solucionar es que en hay un condicional que según si el botón “CREAR CUENTA” de se pulsa, se renderiza el componente <PreApp />. Sino <Landing /> es lo que se muestra. Pero claro ahora quiero tambien añadirle funcionalidad al segundo botón (“HAZ UN TEST”), entonces ya no puedo incluirlo en el condicional ternario porque obviamente sólo permite dos.

Por ejemplo si hago esto, obviamente me renderiza las dos cosas de cada condicional:

class App extends React.Component{   state = {ButtonClicked: false}    handleSubmit = (ButtonClicked) => {     this.setState({ ButtonClicked: ButtonClicked })   }   handleLogin = (EnteredLogin) => {     this.setState({EnteredLogin: EnteredLogin})   }   render(){     return (       <div className="App">         {this.state.ButtonClicked ? <PreApp /> : <Landing handleSubmit={this.handleSubmit} />}         {this.state.EnteredLogin ? <Login /> : <Landing handleLogin={this.handleLogin} />}       </div>     )   } }  export default App;

El componente Landing con los dos botones a los que me refiero:

class Landing extends React.Component{         render(){        return (         <div>             <NavBarMain />             <main>         <section class="presentation">           <div class="introduction">             <div class="intro-text">               <h1>lore ipsum                 </h1>               <p>                   loreimpsum                </p>             </div>             <div class="cta">               <a><button onClick={() => this.props.handleLogin(true)} class="cta-select">CREAR CUENTA</button></a>              <a><button onClick={() => this.props.handleSubmit(true)} class="cta-add">HAZ UN TEST</button></a>             </div>           </div>           <div class="cover">             <img src="" alt="matebook" />           </div>         </section>         </main>         <FooterIndex />         </div>        )    } }

EL MÉTODO ESTÁ OBSOLETO

SOY NUEVA EN ESTO Y ESTOY INTENTANDO A TRAVÉS DE UN SURFACEVIEW CREAR UNA CÁMARA, NO LO CONSIGO YA QUE EL MÉTODO ESTÁ DEPRECATED (OBSOLETO). ACTUALMENTE ESTOY UTILIZANDO API29.

LO ÚNICO QUE NECESITO ES QUE SE VEA EN LA PANTALLA DE LA APLICACIÓN LA VISTA DE LA CÁMARA NO NECESITO NI GUARDAR FOTO NI VÍDEO

¿¿ALGUNO ME PODRÍAIS AYUDAR PARA SOLUCIONAR ESTE FALLO??

public class Video extends AppCompatActivity implements SurfaceHolder.Callback {      private SurfaceView surfaceView;     private Camera camera;     private SurfaceHolder surfaceHolder;     private android.hardware.Camera.PictureCallback pictureCallback;      @Override     protected void onCreate(Bundle savedInstanceState) {         super.onCreate(savedInstanceState);         setContentView(R.layout.activity_video);           surfaceView =findViewById(R.id.surfaceView);          surfaceHolder =surfaceView.getHolder();         surfaceHolder.addCallback(this);         surfaceHolder.setType(SurfaceHolder.SURFACE_TYPE_PUSH_BUFFERS);      }        @Override     public void surfaceCreated(SurfaceHolder surfaceHolder) {         try {             camera= android.hardware.Camera.open();         } catch (Exception e) {          }          Camera.Parameters parameters;         parameters=camera.getParameters();         parameters.setPreviewFrameRate(20);         parameters.setPictureSize(352,288);         camera.setParameters(parameters);         camera.setDisplayOrientation(90);         try {             camera.setPreviewDisplay(surfaceHolder);             camera.startPreview();         } catch (IOException e) {             e.printStackTrace();         }      }      @Override     public void surfaceChanged(SurfaceHolder surfaceHolder, int i, int i1, int i2) {      }      @Override     public void surfaceDestroyed(SurfaceHolder surfaceHolder) {          camera.stopPreview();         camera.release();         camera=null;     } } 

¿Crear un Named Pipe que siempre esta abierto entre WinForms y Win Service en C#?

estoy intentado hacer una conexión entre un servicio y una aplicación WinForms con un Named Pipe pero quiero que esta conexión siempre este abierta y no se cierre porque el servicio le pasara información al WinForms siempre. Hasta ahora le conseguido que se abra la conexión y pasar un mensaje pero no mas de uno.

Codigo del servidor

pipe = new NamedPipeServerStream("My_Pipe", PipeDirection.InOut, 1, PipeTransmissionMode.Message);  pipe.WaitForConnection();  StringBuilder messageBuilder = new StringBuilder(); string messageChunk = string.Empty; byte[] messageBuffer = new byte[5];  try{     //write data     byte dataSend = 48;     pipe.WriteByte(dataSend);      do{         pipe.Read(messageBuffer, 0, messageBuffer.Length);        messageChunk = Encoding.UTF8.GetString(messageBuffer);        messageBuilder.Append(messageChunk);        messageBuffer = new byte[messageBuffer.Length];       } while (!pipe.IsMessageComplete);         respuesta.Text += " " + messageBuilder.ToString();  }catch (IOException exception){     MessageBox.Show("Error: {0}", exception.Message);  }  

Codigo del cliente

pipe = new NamedPipeClientStream("127.0.0.1", "My_Pipe");  pipe.Connect();  //read data int dataReceive = pipe.ReadByte();  //write data try{     string message = "1";      byte[] messageBytes = Encoding.UTF8.GetBytes(message);     pipe.Write(messageBytes, 0, messageBytes.Length);      string message2 = "2";      byte[] messageBytes2 = Encoding.UTF8.GetBytes(message2);     pipe.Write(messageBytes2, 0, messageBytes.Length);  }catch (IOException exception){      Console.WriteLine("Error: {0}", exception.Message);     pipe.Close();  } 

Con este código me llega el numero 1 pero el 2 no me llega al servidor

EL valor de la propiedad es nulo o no está definido, no es un objeto de función

Al llamar a una función para que parsee a milisegundos y compare las fechas, salta el siguiente error al depurar con F12. EL valor de la propiedad ‘esFechaHoraAnterior50min’ es nulo o no está definido, no es un objeto de función. El código de la función ‘esFechaHoraAnterior50min(fecha1, fecha2)’ esta copiado de otra que SI que funciona por lo que no entiendo por qué sale ese error si los campos que le paso van con datos. Gracias de antemano!

Como hacer la función ”si esto no esta activado, muestra un texto”

Hola tengo una variable que me muestra el nombre del usuario que esta registrado, el problema es que cuando no hay ninguno, me sale un notice de undefined index, tiene toda la razón. Entonces me gustaria acer es, que cuando esto pase, de que no hay usuario en el log in, me muestre un texto de usuario no registrado por ejemplo en cambio de el notice con undefined index. Gracias.

 <p>Welcome: <?php echo $  _SESSION['name']; ?></p>

He probado con if pero no me ha salido bien.

tomcat: El recurso requerido no está disponible

El problema aparece cuando le doy a enviar formulario en form.jsp. La acción del formulario es la siguiente, acceder a un controlador:

<form class="col s12" action="$  {pageContext.request.contextPath}/Product_Controller" method="POST"> 

No entiendo por qué si la ruta la he comprobado varias veces y esta bien.¿Por qué podría ser? Lo que más me llama la atención es que ayer si me entraba perfectamente y no he cambiado una sola linea, por eso dudo que el problema sea la especificación de la ruta o como están ordenadas las carpetas.

introducir la descripción de la imagen aquí

form.jsp

<body>           <h4>Rellene el Formulario para Continuar</h4>   <div class="row form-container">     <form class="col s12" action="$  {pageContext.request.contextPath}/Product_Controller" method="POST">       <div class="row">               <div class="input-field ">           <i class="material-icons prefix">assistant</i>           <input id="icon_product" name="nombre" value="$  {product.name}" type="text" class="validate">           <label for="icon_product">Producto</label>         </div>         <div class="input-field ">           <i class="material-icons prefix">clear_all</i>           <input id="icon_cantidad" name="cantidad" value="$  {product.quantity}" type="text" class="validate">           <label for="icon_cantidad">Cantidad</label>         </div>         <div class="input-field">           <i class="material-icons prefix">attach_money</i>           <input id="icon_precio" name="precio" value="$  {product.price}" type="text" class="validate">           <label for="icon_precio">Precio</label>         </div>          <input type = "hidden" name = "id" value = "$  {producto.id}"/>          <button class="btn waves-effect waves-light enviar" type="submit" name="action">Añadir Producto     		<i class="material-icons right">send</i>   		</button>       </div>     </form>   </div>        	 <script src="https://cdnjs.cloudflare.com/ajax/libs/materialize/1.0.0/js/materialize.min.js"></script> </body>

Product_Controller.java

@WebServlet("/Product_Controller") public class Product_Controller extends HttpServlet { 	private static final long serialVersionUID = 1L;         	RequestDispatcher dispatcher = null; 	ProductDAO productDAO = null; 	 	public Product_Controller() { 		productDAO = new ProductDAOImpl(); 	} 	 protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { 		 		String action = request.getParameter("action"); 		 		if(action == null) { 			action = "LIST"; 		} 		 		switch(action) { 			 			case "LIST": 				listProduct(request, response); 				break; 				 			case "EDIT": 				getSingleProduct(request, response); 				break; 				 			case "DELETE": 				deleteProduct(request, response); 				break; 				 			default: 				listProduct(request, response); 				break; 		} 	}  	 		private void deleteProduct(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { 			 			String id = request.getParameter("id"); 		 			if(productDAO.delete(Integer.parseInt(id))) { 				request.setAttribute("NOTIFICATION", "Product Deleted Successfully!"); 			} 			 			listProduct(request, response); 		} 		 		private void getSingleProduct(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException{ 			 			String id = request.getParameter("id"); 			 			Product theProduct = productDAO.get(Integer.parseInt(id)); 			 			request.setAttribute("product", theProduct); 			 			dispatcher = request.getRequestDispatcher("/views/form.jsp"); 			 			dispatcher.forward(request, response); 		} 		 		private void listProduct(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { 			 			List<Product> theList = productDAO.get(); 			 			request.setAttribute("list", theList); 			 			dispatcher = request.getRequestDispatcher("/views/products.jsp"); 			 			dispatcher.forward(request, response); 		} 		 		protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { 			 			String id = request.getParameter("id"); 			 			Product product = new Product(); 			product.setName(request.getParameter("nombre")); 			product.setQuantity(request.getParameter("cantidad")); 			product.setPrice(request.getParameter("precio")); 			 			if(id.isEmpty() || id == null) { 				 				if(productDAO.save(product)) { 					request.setAttribute("NOTIFICATION", "Product Saved Successfully!"); 				} 			 			}else { 				 				product.setId(Integer.parseInt(id)); 				if(productDAO.update(product)) { 					request.setAttribute("NOTIFICATION", "Product Updated Successfully!"); 				} 				 			} 			 			listProduct(request, response); 		} }

Web.xml

<?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" version="3.0">   <display-name>casoPractico_Javier</display-name>   <welcome-file-list>     <welcome-file>index.html</welcome-file>     <welcome-file>index.htm</welcome-file>     <welcome-file>index.jsp</welcome-file>     <welcome-file>default.html</welcome-file>     <welcome-file>default.htm</welcome-file>     <welcome-file>default.jsp</welcome-file>   </welcome-file-list>    </web-app>

Cualquier ayuda lo agradecería estoy realmente atascado con esto. He probado a hacer un clean, a poner un index.jsp, re-deploy el tomcat, nada ha funcionado de momento.

La columna ‘SEQ_FOLIO’ está restringida para ser única. Ya está presente el valor ‘587468382’

tengo dos datatable los cuales los creo así:

        DataTable dtSQL = new DataTable("Table1");         DataTable dtOracle = new DataTable("Table2");          dtSQL.Columns.Add(new DataColumn("TICKET"));         dtSQL.Columns.Add(new DataColumn("STATUS"));         dtSQL.Columns.Add(new DataColumn("RAZON_SOCIAL"));         dtSQL.Columns.Add(new DataColumn("ID_OP"));     dtSQL.Columns.Add(new DataColumn(["SEQ_FOLIO"]));              dtOracle.Columns.Add(new DataColumn("SEQ_FOLIO"));         dtOracle.Columns.Add(new DataColumn("IMPORTE"));         dtOracle.Columns.Add(new DataColumn("DICTAMEN"));         dtOracle.Columns.Add(new DataColumn("COMENTARIO"));         dtOracle.PrimaryKey = new DataColumn[] { dtOracle.Columns["SEQ_FOLIO"] };          ds.Tables.Add(dtSQL);         ds.Tables.Add(dtOracle); 

Estos dt los uno a través de un método:

public static DataTable Union(DataTable First, DataTable Second)      {          //Result table          DataTable table = new DataTable("Union");          //Build new columns          DataColumn[] newcolumns = new DataColumn[First.Columns.Count + Second.Columns.Count];          for (int i = 0; i < First.Columns.Count; i++)          {              newcolumns[i] = new DataColumn(First.Columns[i].ColumnName, First.Columns[i].DataType);          }          for (int i = 0; i < Second.Columns.Count; i++)          {             if (Second.Columns[i].ColumnName == "SEQ_FOLIO")                 newcolumns[First.Columns.Count + i] = new DataColumn(Second.Columns[i].ColumnName + i, Second.Columns[i].DataType);             else                 newcolumns[First.Columns.Count + i] = new DataColumn(Second.Columns[i].ColumnName, Second.Columns[i].DataType);          }          //add new columns to result table          table.Columns.AddRange(newcolumns);          //Load data from first table         DataRow[] drs = null;         List<object> lista = new List<object>();         foreach (DataRow row in First.Rows)         {             lista.Clear();             drs = Second.Select("SEQ_FOLIO='" + row["SEQ_FOLIO"].ToString() + "'");              if (drs.Length == 1)             {                 lista.AddRange(row.ItemArray);                 lista.AddRange(drs[0].ItemArray);                 table.Rows.Add(lista.ToArray());             }             else             {                 lista.AddRange(row.ItemArray);                 lista.AddRange(new object[Second.Columns.Count]);                 table.Rows.Add(lista.ToArray());             }         }          return table;      } 

Pero tengo problemas cuando el campo SEQ_FOLIO trae folios iguales ya que el dtOracle solo se llena con 1 solo registro cuando en realidad son 2; es decir, omite un registro y se va a la excepción mandando mensaje:

La columna ‘SEQ_FOLIO’ está restringida para ser única. Ya está presente el valor ‘587468382’.

Variable que al agregarle información esta se sobre pone

Quiero traer el resultado de una sesión ssh a una variable local

FILEBACK=$  (sshpass -p 'pass' ssh admin@1.1.1.1 -p 22 -o StrictHostKeyChecking=no ':put $  rvar;') 

al ver la variable el resultado es el correcto:

$   echo "$  FILEBACK" HOLA_COMO 

Pero si quiero agregarle una extensión a ese valor, se sobrepone al principio:

$   echo "$  FILEBACK.estas" .estasOMO 

el “.estas” se coloca sobre la parte de la variable “HOLA_C” y se muestra el resto.

¿como asignar un valor a una variable que ya está encapsulada?

este es el enunciado

una clase denominada Empleado por Comisión que tiene los atributos primer nombre, primer apellido, número seguro social, venta bruta y tarifa comisión. En la misma clase hay un constructor que recibe cinco (5) parámetros de entrada para cada uno de los atributos definidos y que se asignan a través del this. También están definidos los respectivos métodos getters para cada uno de los atributos.  Se debe definir el método setVentasBrutas que recibe un parámetro de entrada denominado ventasBrutas de tipo double, dentro del método se debe validar que el parámetro de entrada sea mayor o igual a 0.0, si el valor cumple la condición se asignar al atributo ventasBrutas que está encapsulado y tiene el tipo de dato double.  Se debe definir el método setTarifaComision que recibe un parámetro de entrada denominado tarifaComision de tipo double, dentro del método se debe validar que este parámetro no sea menor o igual a 0.0 o mayor o igual a 1.0, si es así se debe indicar que la tarifa de comisión no es correcta, pero si está dentro del rango definido se asigna el valor del parámetro de entrada al atributo tarifaComision que está encapsulado y tiene el tipo de dato double.

 Se debe definir el método ingreso que se encarga de retornar el producto de los atributos tarifaComision y ventasBrutas.

 Existe una clase cliente denominada Prueba Empleado por Comisión donde se instancia la clase EmpleadoPorComision y se obtiene el primer nombre, el primer apellido y el numero de seguro social para el empleado. También se define las ventas brutas, la tarifa de comisión y finalmente se calcula los ingresos del empleado.