• Portada
    • Recientes
    • Usuarios
    • Registrarse
    • Conectarse

    Ayuda con consulta MySQL en PHP

    Programado Fijo Cerrado Movido
    Software
    4
    32
    3.4k
    Cargando más mensajes
    • Más antiguo a más nuevo
    • Más nuevo a más antiguo
    • Mayor número de Votos
    Responder
    • Responder como tema
    Accede para responder
    Este tema ha sido borrado. Solo los usuarios que tengan privilegios de administración de temas pueden verlo.
    • vallekanoV
      vallekano @NiTTAKu
      Última edición por

      Prueba a poner:
      $query = "INSERT INTO entradas ( fecha, hora, 01) VALUES
      ('$fecha','$hora','$entradas')";

      A ver si así lo pilla y por lo menos aislamos el problema.

      Otra cosa. Está permitido que el nombre de un campo sean solo números?? Yo nunca lo he probado pero puede ser que no te permita que un campo se llame "01".

      MoebiusM 1 Respuesta Última respuesta Responder Citar 0
      • MoebiusM
        Moebius @vallekano
        Última edición por

        @vallekano:

        Otra cosa. Está permitido que el nombre de un campo sean solo números?? Yo nunca lo he probado pero puede ser que no te permita que un campo se llame "01".

        Si Vallekano, es valido … siempre que mysql lo entienda como texto ... por eso lo de las comillas. Yo he usado una campo que se llamaba 360 (para un campo que almacenaba nombres de imagenes 360º) y solo me dio problemas cuando intente llamarlo en las consultas como 360 y no '360'.

        El problemilla se esta poniendo peliagudo. Si desde Mysql te da el mismo error, la consulta es erronea. Prueba lo que te dije ... inserta un registro con esos valores en phpmyadmin (previa seleccion de la BD) y observa la consulta que genera y comparala con la tuya.

        Nos tiene intrigados. :susto:

        NiTTAKuN 1 Respuesta Última respuesta Responder Citar 0
        • NiTTAKuN
          NiTTAKu @Moebius
          Última edición por

          Haciendo una insercion desde phpMyAdmin como me aconsejaste he logrado solucionarlo, ahora inserta el registro perfectamente :vayatela:
          La linea ha quedado tal que asi:
          $query = "INSERT INTO entradas ( fecha , hora , $sala ) VALUES ( '$fecha', '$hora', '$entradas' )";
          que comparada a la primera consulta:
          $query = "INSERT INTO entradas ( fecha, hora, $sala ) VALUES
          ('$fecha','$hora','$entradas')";

          solo difiere del tipo de comillas :rolleyes: la verdad que no lo entiendo, pero si funciona, como dice el dicho, NO LO TOQUES xD

          vallekanoV 1 Respuesta Última respuesta Responder Citar 0
          • vallekanoV
            vallekano @NiTTAKu
            Última edición por

            Si, el phpmyadmin este pone las comillas esas raras (apostrofes,no?), pero debería de funcionar con las comillas simples de to la vida. Vamos, yo siempre uso las comillas simples.

            Sea como sea, me alegro de que esté solucionado.

            MoebiusM 1 Respuesta Última respuesta Responder Citar 0
            • MoebiusM
              Moebius @vallekano
              Última edición por

              Me alegro de que ya funcione. :sisi:

              Como dice Vallekano el tipo de comillas no debe suponer una diferencia, así que no entiendo demasiado bien el problema. 😕

              Pero ya sabes … en estos casos "de locos"... conviene copiar la forma en que el propio phpmyadmin hace la consulta :risitas: .

              ninchi_punkrockN 1 Respuesta Última respuesta Responder Citar 0
              • ninchi_punkrockN
                ninchi_punkrock @Moebius
                Última edición por

                weno, yo no se si estoy mu desfasao en esto, pero le veo unos cuantos errores no?? yo creo que si estás en php lo normal seria
                $query= mysql_query ('INSERT INTO tabla VALUES (' ', , ' ',' $CONEX)

                las comillas dobles no son aconsejables, y debemos insertar valores en todos los campos, aunque vayan vacíos, eske no se pueden hacer inserciones selectivas de campos salteados…

                vallekanoV 1 Respuesta Última respuesta Responder Citar 0
                • vallekanoV
                  vallekano @ninchi_punkrock
                  Última edición por

                  No, hay te equivocas.

                  Tu puedes hacer una inserción en algunos campos solo, siempre y cuando el resto de campos tengan un valor predefinido, o permitan valores nulos.

                  Por ejemplo lo normal es tener un campo que sea el "ID" de la tabla, y dicho campo se define como clave y que se auto incremente. En ese campo nunca insertarás un valor poruq no sabes cual toca, pero si está definido así MySQL inserta automáticamente el siguiente numerito.

                  Pues igual con el resto de campos.

                  Y porque dices que las comillas dobles no son aconsejables???

                  Además en tu caso daría un error porque te va a tomar varias cadenas:
                  $query= mysql_query ('INSERT INTO tabla VALUES (' ', , ' ',' $CONEX)

                  1. 'INSERT INTO tabla VALUES ('
                  2. ', , '
                  3. ','
                  4. $CONEX)

                  Pero que no están concatenadas asique se va a hacer la picha un lio.

                  Creo que no es que estés desfasado, esque o no sabes o no te acuerdas xDxD

                  ninchi_punkrockN 1 Respuesta Última respuesta Responder Citar 0
                  • ninchi_punkrockN
                    ninchi_punkrock @vallekano
                    Última edición por

                    ke yo no se php??? el ke se está ekivocando eres tú

                    1.- Siempre tienes ke insertar todos los campos, y si alguno no te interesan los tienes ke insertar vacíos (siempre ke en la tabla te permitan los nulls)
                    2.- Las ' ', y eso lo he puesto como demostración, indicando que cuando introduzcamos caracteres hay ke poner ' ' y cuando sean datos enteros o float no se pone nada.
                    3.- Totalmente prohibido comillas dobles cuando programemos html y php mixto. Porque, dirás tu???
                    Pues porque cuando estamos en php y abrimos html, debemos poner echo" …..................."; Y si nosotros en php abrimos comillas "", este se va a creer ke lo ke va después es código html cuando no lo va a ser... hombre pofavó!!!jeje

                    ninchi_punkrockN vallekanoV 2 Respuestas Última respuesta Responder Citar 0
                    • ninchi_punkrockN
                      ninchi_punkrock @ninchi_punkrock
                      Última edición por

                      y ademas, ese nota creo ke se está ekivocando porke kiere insertar en el campo $sala un valor, y un campo ke sea variable sala no lo veo yo mu bien eso, no sé…

                      vallekanoV 1 Respuesta Última respuesta Responder Citar 0
                      • vallekanoV
                        vallekano @ninchi_punkrock
                        Última edición por

                        Pues lo había dicho de coña pero ahora si que pienso que no tienes ni pajolera idea. O esque no nos entendemos.

                        1.- Siempre tienes ke insertar todos los campos, y si alguno no te interesan los tienes ke insertar vacíos (siempre ke en la tabla te permitan los nulls)

                        Entonces como insertas las claves que son por ejemplo un entero?? Lees el último registro y luego insertas sumandole uno??
                        ….............. sin comentarios. Solo te digo una cosa: http://www.php.net/

                        3.- Totalmente prohibido comillas dobles cuando programemos html y php mixto. Porque, dirás tu??? Pues porque cuando estamos en php y abrimos html, debemos poner echo" …..................."; Y si nosotros en php abrimos comillas "", este se va a creer ke lo ke va después es código html cuando no lo va a ser... hombre pofavó!!!jeje

                        entonces no puedo poner en php?:

                        $micadena = "En un lugar de la mancha";
                        
                        echo $micadena;
                        
                        

                        Eh??? No puedo poner eso???

                        Yo lo que creo es que no sabes bien como funciona el php. PHP no "piensa" que es HTML y que no. PHP procesa todo el código y envía el texto resultante de ese proceso, que puede HTML, una hoja excel, o lo que te de la gana.

                        Ádemás, nada de lo que haya entre lo va a tomar como HTML. Todo lo que valla ahí en medio es código PHP. Otra cosa es el resultado que de ese código.

                        Y no seas tan chulito por favor, que creo que en ningún momento me he puesto de esa manera. Que ya he visto un par de post tuyos que escribes de una manera que parece que te crees el que más sabes y no es así. Ni tu, ni yo ni nadie. Hay que hablar con más humildad.

                        1 Respuesta Última respuesta Responder Citar 0
                        • vallekanoV
                          vallekano @ninchi_punkrock
                          Última edición por

                          @ninchi_punkrock:

                          y ademas, ese nota creo ke se está ekivocando porke kiere insertar en el campo $sala un valor, y un campo ke sea variable sala no lo veo yo mu bien eso, no sé…

                          Pues si te leyeses el post verías que al final le ha funcionado asique ese nota , como tu dices, no estaría haciendo algo tan mal echo.

                          ninchi_punkrockN 1 Respuesta Última respuesta Responder Citar 0
                          • ninchi_punkrockN
                            ninchi_punkrock @vallekano
                            Última edición por

                            weno weno, amo a relajanno, si he paresio chulito, perdon, anke sea mi forma de escribir pero hay ke adaptarla
                            y eso, eske amo a ve, yo eske no se que estais usando para programar, pero desde luego si usamos la combinación php y mysql, las consultas son así, mas ke na porke yo las pruebo y funcionan.
                            Los campos ke tu dices autonumericos, depende de los tipos de tabla ke tengamos definios, se tragará una forma u otra de insertarlos. Pero desde luego, en una tabla siempre debemos (recomendablemente) insertar los campos, y los ke no keramos, dejarlos en blanco, siempre ke la tabla tenga esos campos ke permitan valores por defecto o valores nulos, y eso no me puedes decir ke estoy ekivocao porke está comprobao. Además, yo digo el nota por decir el chaval de antes, es dialecto andalú embrutesio jeje! ke eso, ah, otra cosa ke no veo (ke no kiero con esto decir ke este mal) es
                            $query= 'Insert yo no se ké'
                            cuando kieras realizar funciones query sobre una tabla debemos poner
                            $query= mysql_query ('INSERT TA TA TA TA TA') NO??? (sin ánimo de ofender, solamente preguntando para mi informacion)
                            y lo de las comillas es asi por ejemplo
                            echo "el resultado es:";
                            $resul=mysql_query ("select * from …...... ", $conex) esas comillas dobles van a crear conflictos, lo mejor es ponerlas simples y kitarse de problemas, digo yo no?? (y repito, siento el tono de antes)
                            Gracias

                            ninchi_punkrockN 1 Respuesta Última respuesta Responder Citar 0
                            • ninchi_punkrockN
                              ninchi_punkrock @ninchi_punkrock
                              Última edición por

                              perdon, rectifico, he estao mirando unos php ke hice pa un instituto y es cierto

                              case 'FUTBITO': case 'BALONCESTO': case 'VOLEIBOL':
                              {
                              echo "<title>DEPORTES DE EQUIPO</title>

                              <center>ENFRENTAMIENTOS DE ".$deportes;
                              echo "</center>


                              ";
                              $resul=mysql_query("select distinct encuentros.Equipo1, encuentros.Equipo2, encuentros.Marcador_del_1, encuentros.Marcador_del_2, encuentros.CodCat, encuentros.Deporte
                              from encuentros, equipos, categorias, deportes
                              where encuentros.Deporte='$deportes' and encuentros.CodCat='$categoria'
                              and encuentros.Equipo1=equipos.Nombreequipo
                              and encuentros.CodCat=categorias.CodCat
                              and encuentros.Deporte=deportes.CodigoDeporte",$link);
                              echo "

                              ";

                              LAS COMILLAS DOBLES FUNCIONAN para echo ""; y para php ahí arriba podemos ver ke se combinan todo dentro de un case y funciona
                              uy uy, hay ke repasar más los apuntes de vé en cuando ninchi…
                              perdon

                              | Equipo Local | Equipo visitante | Marcador Local | Marcador Visitante | Categoría | **

                              <center>Deporte</center>

                              ** |

                              vallekanoV 1 Respuesta Última respuesta Responder Citar 0
                              • vallekanoV
                                vallekano @ninchi_punkrock
                                Última edición por

                                Bueno bueno, pare que al final reculas algo y nos ponemos de acuerdo. Asique paso de comentar nada más.

                                Solo un consejo:
                                Cuando vas a escribir mucho código con un "echo". Como tienes echo un par de veces en tu código, es mejor cerrar el php, ponerlo comocódigo HTML normal y luego volver a abrir. Osea:

                                en vez de:
                                echo $mivariable1."jshfka sfhasd fhask dhfksjad fhksaj dfhksjda fksadh fkjshda fkhds fksa".$mivariable2;
                                ?>

                                Poner:

                                jshfka sfhasd fhask dhfksjad fhksaj dfhksjda fksadh fkjshda fkhds fksa

                                Así el servidor tiene que procesar mucho menos código y ganas dos cosas:
                                1. El servidor se carga menos.
                                2. El código HTML resultante se genera antes y va todo más rápido.

                                Es solo un consejo.

                                ninchi_punkrockN 1 Respuesta Última respuesta Responder Citar 0
                                • ninchi_punkrockN
                                  ninchi_punkrock @vallekano
                                  Última edición por

                                  pues eso no lo sabía…pero si, ara ke lo dices, se ve...lo ke pasa es ke es un poco más comodo ponerlo todo dentro de un echo "" ke tener ke abrir y cerrar scripts no? (tó es por flojera, ves, jeje)
                                  pero ke eso, yo el único fallo ke le veía a la consulta de nittaku es ke kería insertar un valor en un nombre de campo que era $sala (y creo ke una variable no puede ir como nombre de campo) además, eske antes estaba confundío entre hacer consultas con php y hacer consultas con el editor mysql por eso era lo de las comillas, jo, ke paranoya mas mala,
                                  weno, po de colegueo entonce no?
                                  enga

                                  vallekanoV NiTTAKuN 2 Respuestas Última respuesta Responder Citar 0
                                  • vallekanoV
                                    vallekano @ninchi_punkrock
                                    Última edición por

                                    @ninchi_punkrock:

                                    weno, po de colegueo entonce no?

                                    Si hombre, no soy rencoroso, pero esque últimamente estoy un poco quemadito con el tema foros. No por este en especial, si por otros en particular xD, pero esque hay mucho listillo por ahí suelto. Al igual que hay mucho niñato. Y no digo que seas ninguna de las dos cosas, pero hay comentarios o ciertas formas de hablar de la gente que me comen por dentro.

                                    ninchi_punkrockN 1 Respuesta Última respuesta Responder Citar 0
                                    • ninchi_punkrockN
                                      ninchi_punkrock @vallekano
                                      Última edición por

                                      ya, pero yo no me considero listillo sabes, ni mucho menos, yo aki son un mierda!! y ojalá fuera un niñato otra ve !!jojo
                                      pero vamo, ke eso, ke vamo a perder la cabeza con los ordenadores.. jaja

                                      MoebiusM 1 Respuesta Última respuesta Responder Citar 0
                                      • MoebiusM
                                        Moebius @ninchi_punkrock
                                        Última edición por

                                        Juer … pues si que se ha calentado esto en un rato ... y eso que el problema que originó la rama ya está solucionado, je je je.

                                        ninchi_punkrock php permite hacer las cosas de muchas maneras. Tanto las comillas simples como las dobles son limitadores de cadena. Así que funcionará tanto con ' como con ". A la hora de hacer combinaciones solo tienes que tener cuidado.

                                        Prueba lo siguiente:

                                        echo "ESTE ES UN EJEMPLO CON 'COMILLAS'
                                        ";
                                        echo 'ESTE ES UN EJEMPLO CON "COMILLAS"
                                        ';
                                        echo "ESTE ES UN EJEMPLO CON "COMILLAS"
                                        ";

                                        Podras comprobar como resultado del primer caso COMILLAS va entre comillas simples, y en los otros dos entre comillas dobles.

                                        Cualquiera de las tres funciona siendo una combinación de distintos tipos de comillas.

                                        Y con respecto a los campos de MYSQL, de obligado nada. Para eso existen los valores por defecto a la hora de definir la tabla.

                                        ¿Por cierto Vallekano te dedicas profesionalmente a esto de la programacion PHP?

                                        vallekanoV 1 Respuesta Última respuesta Responder Citar 0
                                        • vallekanoV
                                          vallekano @Moebius
                                          Última edición por

                                          @Moebius:

                                          ¿Por cierto Vallekano te dedicas profesionalmente a esto de la programacion PHP?

                                          No. Ahora mismo profesionalmente trabajo con ASP, pero pal caso la mentalidad de programación y la metodología es la misma.

                                          Y PHP lo uso yo de manera personal para ir aprendiendo.

                                          1 Respuesta Última respuesta Responder Citar 0
                                          • NiTTAKuN
                                            NiTTAKu @ninchi_punkrock
                                            Última edición por

                                            @ninchi_punkrock:

                                            yo el único fallo ke le veía a la consulta de nittaku es ke kería insertar un valor en un nombre de campo que era $sala (y creo ke una variable no puede ir como nombre de campo)

                                            Los nombres de campo de la tabla, como dije al principio del post, eran una serie numerada de 01 a 10, y el objetivo de la variable ni mas ni menos es el de seleccionar el campo donde insertar la información que necesito insertar. Asi pues, una variable SI puede llamar un campo en una consulta MySQL en php.

                                            Otra cosa es que el diseño de la tabla no sea el correcto, que ya lo he admitido y aclarado, pero poderse te digo yo a ti que se puede porque a mi me funciona
                                            xD

                                            Lo de "el nota" supongo q la llamao la atencion porque sabes bien que esa forma lingüistica usada en el andaluz depende mucho del tono con el cual se diga, se puede usar como colegueo o puede usarse en tono totalmente despectivo. Aun asi, perdon si esto ha originao una discusion, llevo bastante sin entrar en HL y no sabia q los animos estuvieran tan caldeaos vallekano. En todo caso, si pregunto aqui es porque se que hay gente que algo sabe del tema y muy probablemente mas que yo (y eso que estoy estudiando esto xD) pero ante todo se que al fin y al cabo los usuarios de HL siempre hemos tenido una relacion de compartir conocimiento y es lo que en su día me enganchó.

                                            Weno lo dicho, q me pongo en plan sentimental xD Q gracias mil por la ayuda (nunca se me hubiera ocurrio hacer una insercion de phpMyAdmin y comparar :verguen:)

                                            vallekanoV 1 Respuesta Última respuesta Responder Citar 0
                                            • 1
                                            • 2
                                            • 2 / 2
                                            • First post
                                              Last post

                                            Foreros conectados [Conectados hoy]

                                            1 usuarios activos (0 miembros e 1 invitados).
                                            febesin, pAtO, cobito

                                            Estadísticas de Hardlimit

                                            Los hardlimitianos han creado un total de 543.3k posts en 62.8k hilos.
                                            Somos un total de 34.8k miembros registrados.
                                            seaofink ha sido nuestro último fichaje.