Noticias

¡RECUERDA QUE SI ERES UN NUEVO USUARIO, DEBES PRESENTARTE PARA PODER PUBLICAR MENSAJES! | TENEMOS CANAL OFICIAL DE TELEGRAM: t.me/unity3dspain

Ayuda con codigo PHP/MySQL

Iniciado por daniele_kiro, Marzo 25, 2016, 03:49:31 PM

Tema anterior - Siguiente tema
Buenas gente !!No tengo ni idea de como funciona este tipo de programación y me gustaría saber si me podríais echar una mano con un código que no me funciona...

<?php
include ('MiniJuegos.php');

$nombre = $_GET['nombre'];
$uno = $_GET['uno'];
$turno= $_GET['turno'];


$query = "UPDATE versus SET uno = $uno , turno = $turno WHERE nombre = $nombre";


$query = "SELECT * FROM versus WHERE nombre = $nombre";
$result = mysql_query($query) or die('Query failed: ' . mysql_error());

$num_results = mysql_num_rows($result);  
$row = mysql_fetch_array($result);

echo ''.$row['status'].' '.$row['nombre'].' '.$row['uno'].' '.$row['dos'].' '.$row['turno'].'';

?>
 Me explico lo que quiero lograr con este código.- Primero quiero hacer un UPDATE en la variable "uno" y "turno" de la tabla "versus" donde el "nombreuno" coincida con el que proporciono- Segundo, a su vez, quiero que el código me devuelva los valores de esa misma linea donde coincide el "nombre" que son "status", "nombre", "uno", "dos" y "turno". Por separado, funcionan, pero lo que quiero es que con un mismo "script" realice las dos cosas y no tenga que estar llamando a más...Si la solución es obvia lo siento mucho, pues no tengo ni idea, y si por el contrario no se pudiera hacer me gustaría saberlo o alguna posible solución...Muchas gracias de antemano gente!!!

Yo tampoco sé programar PHP, pero parece que después de asignar el primer query no lo pides, lo reescribes en la siguiente línea, si fuera tú probaría a pedir el query 'mysql_query($query)' antes de volver a cambiar el query. También intentaría implementar las funciones mysqli en vez de mysql, cuando estuve leyendo sobre acceso a bbdd creo que habían actualizado esas funciones.

O por PDO también el acceso a la bbdd. Yo utilizo éste.http://php.net/manual/es/book.pdo.php" rel="external nofollow">http://php.net/manual/es/book.pdo.phpEn el código, creas la cadena del Update pero no lanzas la transacción. Recuerda que mysql_fetch_array devuelve un array, no una fila. En este caso te funcionará porqué siempre te va a devolver una, pero no es la manera. Creo que debería ser así:
$query = "UPDATE versus SET uno = $uno , turno = $turno WHERE nombre = $nombre"; 
$rows = mysql_query($query);
if ($rows == true) ... Ok
else ... Error


$query = "SELECT * FROM versus WHERE nombre = $nombre";
$rows = mysql_query($query);
while ($row = mysql_fetch_assoc($rows)) {
echo ''.$row['status'].' '.$row['nombre'].' '.$row['uno'].' '.$row['dos'].' '.$row['turno'].'';
}

// El rows ya contiene el número de filas. No hace falta hacer otro query
, aunque esto siempre te va a devolver una fila, a menos que la bbdd no sea como me parece. Creo que es así, pero lo hago de memoria
$num_results = $rows.count();
 Espero te sirva de base.

[quote author=iRobb" data-ipsquote-contapp="forums" data-ipsquote-contenttype="forums" data-ipsquote-contentclass="forums_Topic" data-ipsquote-contentid="35479" data-ipsquote-contentcommentid="128666">O por PDO también el acceso a la bbdd. Yo utilizo éste.http://php.net/manual/es/book.pdo.php">http://php.net/manual/es/book.pdo.phpEn el código, creas la cadena del Update pero no lanzas la transacción. Recuerda que mysql_fetch_array devuelve un array, no una fila. En este caso te funcionará porqué siempre te va a devolver una, pero no es la manera. Creo que debería ser así:
$query = "UPDATE versus SET uno = $uno , turno = $turno WHERE nombre = $nombre";= mysql_query($query);
if ($rows == true) ... Ok
else ... Error


$query = "SELECT * FROM versus WHERE nombre = $nombre";
$rows = mysql_query($query);
while ($row = mysql_fetch_assoc($rows)) {
echo ''.$row['status'].' '.$row['nombre'].' '.$row['uno'].' '.$row['dos'].' '.$row['turno'].'';
}

// El rows ya contiene el número de filas. No hace falta hacer otro query
, aunque esto siempre te va a devolver una fila, a menos que la bbdd no sea como me parece. Creo que es así, pero lo hago de memoria
$num_results = $rows.count();
 Espero te sirva de base.[/quote]Como dirían el los foros ingleses It works like a charm !!Agradecido no !! lo siguiente !! si alguna vez si alguna vez vas a Madrid tienes una cerveza pagada !! y muchas gracias por la documentación intentare aprender un poco mas por que sinceramente he ido uniendo trozos de código por Internet para formar el mio por que no tengo ni idea...


Voy a ser muy buena persona y voy a preguntar previamente:¿Qué tiene que ver aquí una consulta sobre SQL , con Unity y videojuegos?  XDDDDD Por ser la primera vez, te la  paso, pero que no vuelva a ocurrir. 

retrato de la cara que se me ha quedado con esa pregunta ->  xDDDDD

[quote author=pioj" data-ipsquote-contapp="forums" data-ipsquote-contenttype="forums" data-ipsquote-contentclass="forums_Topic" data-ipsquote-contentid="35479" data-ipsquote-contentcommentid="128677">Voy a ser muy buena persona y voy a preguntar previamente:¿Qué tiene que ver aquí una consulta sobre SQL , con Unity y videojuegos?  XDDDDD Por ser la primera vez, te la  paso, pero que no vuelva a ocurrir. [/quote]Vaya hombre.Yo que iba a abrir un tutorial sobre como conquistar veinteañeras en 10 minutos. En fin, me lo guardo para mí :D

[quote author=pioj" data-ipsquote-contapp="forums" data-ipsquote-contenttype="forums" data-ipsquote-contentclass="forums_Topic" data-ipsquote-contentid="35479" data-ipsquote-contentcommentid="128677">Voy a ser muy buena persona y voy a preguntar previamente:¿Qué tiene que ver aquí una consulta sobre SQL , con Unity y videojuegos?  XDDDDD Por ser la primera vez, te la  paso, pero que no vuelva a ocurrir.  pero bueno, aclarada la duda pido perdón por las molestias!!Ahora por esas restricciones nos hemos quedado sin el tutorial de iRobb!!:lol:

todas esas preguntas de lenguajes de programación están fuera de lugar xq...xD

Etiquetas: