Foros del Web » Programando para Internet » PHP »

Necesito ayuda con un script PHP

Estas en el tema de Necesito ayuda con un script PHP en el foro de PHP en Foros del Web. Chicos, el problema es el siguiente, en el siguiente codigo fuente vereis un script que estoy desarrollando junto con un colega para un proyecto de ...
  #1 (permalink)  
Antiguo 26/07/2003, 12:11
 
Fecha de Ingreso: diciembre-2001
Mensajes: 119
Antigüedad: 16 años
Puntos: 0
Necesito ayuda con un script PHP

Chicos, el problema es el siguiente, en el siguiente codigo fuente vereis un script que estoy desarrollando junto con un colega para un proyecto de juego online. El problema es el siguiente, despues de entrar y de llegar a la pagina a ejecutar con las variables de sesion correctas y tal, resulta que el programa me abre la BBDD y obtiene los datos de la misma de forma correcta, y trabaja con ellos pero no kiere introducir los nuevos datos originados en el programa. ¿Por qué? Pues no tengo ni idea, he revisado todo y no consigo localizar el fallo por eso acudo a vosotros.

Este es el codigo:
Cita:
<?
// REQUIRE de Verificación de login e Inicio de Session
require ("aut_verifica.inc.php");


// Datos de conexion a la Base de datos (BBDD)
$hostname = "localhost"; //URL del Servidor
$username = "root"; //USER del Servidor
$password = ""; //PASS del USER del Servidor
$dbName = "arch"; //Nombre de la BBDD

$nick = $_SESSION['mago_login'];

// Conexion Persistente a la BBDD
$db = mysql_connect($hostname,$username,$password) or DIE("DATABASE FAILED TO RESPOND.");
mysql_select_db($dbName,$db) or DIE("Table unavailable");


// Extracción de los datos pertinentes
$cons1 = "select mago.id_mago, mago.nick, mago.magia, mago.turnos, mago.oro, mago.tierra, mago.fortalezas, mago.idioma from mago where (mago.nick like '$nick')";
$cons1 = mysql_query($cons1,$db);
$res1 = mysql_fetch_array($cons1);

include ("variables.php");

$TIERRAS = $res1[5];
$TURNOS = $res1[3];
echo $TIERRAS;
echo $TURNOS;


// liberamos la memoria usada por la consulta, ya que tenemos estos datos en el Array.
mysql_free_result($cons1);
// cerramos la Base de dtos.
//mysql_close($db);

$error = 0;
/*
if ($texplorer > $TURNOS){$texplorer = 0; $error = 1;}
*/

for ($i=0; $i<$texplorer; $i++)
{
$TIERRAS = round($TIERRAS + ((3001-$TIERRAS)/100));
if ($TIERRAS > 3001)
{
$texplorer = $i; $error = 2;
}

// Calculando el Mana
if (((round($NODOS/$TIERRAS*10000))/100) < 11) {$PoderA = $NODOS*10;}
else {$PoderA = floor((($NODOS - (round($TIERRAS/10))) * 10) * (1 - floor($NODOS/$TIERRAS*100)/100)) + $TIERRAS;}
$PoderA = $PoderA - ($BARRERAS * $mantenimiento["barreras"]["mana"]);

// Calculando la Población
$PuebloA = floor((($PUEBLOS - (round($GRANJAS/10))) * 10) * (1 - floor($PUEBLOS/$GRANJAS*100)/100)) + $GRANJAS;

// Calculando el Oro
$ORO = floor(1.3*$PuebloA);

// Costes en Oro por MANTENIMIENTO
$ORO = $ORO - ($GRANJAS * $mantenimiento["granjas"]["oro"]);
$ORO = $ORO - ($PUEBLOS * $mantenimiento["pueblos"]["oro"]);
$ORO = $ORO - ($TALLERES * $mantenimiento["talleres"]["oro"]);
$ORO = $ORO - ($BARRACAS * $mantenimiento["barracas"]["oro"]);
$ORO = $ORO - ($GREMIOS * $mantenimiento["gremios"]["oro"]);
$ORO = $ORO - ($NODOS * $mantenimiento["nodos"]["oro"]);
$ORO = $ORO - ($FORTALEZAS * $mantenimiento["fortalezas"]["oro"]);
}

$TURNOS = $TURNOS - $texplorer;

// Conexion Persistente a la BBDD
//$db2 = mysql_connect($hostname,$username,$password) or DIE("DATABASE FAILED TO RESPOND.");
//mysql_select_db($dbName,$db2) or DIE("Table unavailable");

$texto = "datos al final del explorar: ";
echo $TURNOS;
echo $TIERRAS;



$sql = "insert into mago (turnos, tierra, poder, pueblos, oro) values ($TURNOS, $TIERRAS, $PODER, $PUEBLOS, $ORO)";
$result2 = mysql_query($sql);


// cerramos la Base de dtos.
//mysql_close($db2);


?>

<html>
<head>
<title>-- EXPLORAR EN NUEVA TERRA --</title>
</head>

<body>
<form method="POST" action="explorar.php?<? echo SID ?>">
<table align="center" border="0">
<tr>
<td>Turnos a Explorar:&nbsp; </td>
<td><input type="text" name="texplorer" size="4"></td>
</tr>
<tr>
<td colspan="2" align="center"><input type="submit" value="Explorar" name="B1" style="font-family: Arial Narrow; font-size: 8pt"></td>
</tr>
</table>
</form>
<a href="menu.php?<? echo SID ?>">volver</a>
<?
if ($error == 1){echo "La cantidad de turnos ha explorar supera los turnos disponibles.";}
elseif ($error == 2){echo "Ha alcanzado el límite de tierras ha explorar.";}
else {echo "La cantidad de tierras exploradas es ahora de $TIERRAS acres.";}
?>
</body>
</html>
__________________
Aythami AngelusGC Melián Perdomo
Estudiante de Ing. en Informática de Sistemas
Componente del SunCanary QNX-Users Group
  #2 (permalink)  
Antiguo 26/07/2003, 14:04
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 15 años, 5 meses
Puntos: 16
Hola,

Prueba a mirar si te da un error de MySQL con:
Código PHP:
 $result2 mysql_query($sql) or die(mysql_error()); 
Saludos.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
  #3 (permalink)  
Antiguo 26/07/2003, 14:28
 
Fecha de Ingreso: diciembre-2001
Mensajes: 119
Antigüedad: 16 años
Puntos: 0
naaa josemi, er mu jo(piiiiiiiiiiiiiiiiiiiiiiiii) sigue igual, no mete los datos nuevos dentro de la BBDD
__________________
Aythami AngelusGC Melián Perdomo
Estudiante de Ing. en Informática de Sistemas
Componente del SunCanary QNX-Users Group
  #4 (permalink)  
Antiguo 26/07/2003, 15:21
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 15 años, 5 meses
Puntos: 16
Mi codigo no era para solucionar el problema, solo para ver el mensaje de error. ¿Cual es?

Saludos.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
  #5 (permalink)  
Antiguo 27/07/2003, 11:11
 
Fecha de Ingreso: diciembre-2001
Mensajes: 119
Antigüedad: 16 años
Puntos: 0
No da error alguno
__________________
Aythami AngelusGC Melián Perdomo
Estudiante de Ing. en Informática de Sistemas
Componente del SunCanary QNX-Users Group
  #6 (permalink)  
Antiguo 27/07/2003, 14:20
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 15 años, 5 meses
Puntos: 16
¿Estas seguro que lo que quieres hacer es insertar un registro nuevo y no modificar los datos del registro existente? Es que INSERT crea un registro nuevo en la tabla 'mago'. Y no veo en ese insert que metas el 'id_mago' que parece ser el valor que usas para recuperar los datos. Si miras en tu base de datos con el phpMyAdmin, por ejemplo, veras si te a creado esos nuevos registros o no.

Saludos.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
  #7 (permalink)  
Antiguo 27/07/2003, 18:33
 
Fecha de Ingreso: diciembre-2001
Mensajes: 119
Antigüedad: 16 años
Puntos: 0
oops, verdad, debe de ser entonces UPDATE si mal no m acuerdo. Corrigeme si me equivoco
__________________
Aythami AngelusGC Melián Perdomo
Estudiante de Ing. en Informática de Sistemas
Componente del SunCanary QNX-Users Group
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 22:07.