Hola a todos , tenia un tiempo sin conectarme pero , estoy de regreso y pues aqui con un problemon grandisimo!
El problema es este , tengo un sistema de puntos que anterior mente postee aqui por algunos probles que tenia pero ahora de repente me aparece este mensaje a la hora de transferir puntos entre los usuarios!
Esta es una imagen del formulario de envio
(http://i57.servimg.com/u/f57/18/21/81/46/aa1_bm10.jpg)
y este es el error que me tira!
(http://i57.servimg.com/u/f57/18/21/81/46/aa2_bm10.jpg)
Este es el code que uso:
<?php
$con = mysql_connect('host','usuario','contraseña');
$db = 'nombre_de_la_tabla';
$sql = 'select * from nomtabla where user_id=' . $_POST["tu_id"] . "'";
$res = mysql_db_query($db,$sql,$con);
if ($user_1 = mysql_fetch_array($res)){
$puntos_user_1 = $user_1[puntos];
}
$sql = "select * from nomtabla where user_id='" . $_POST["otro_id"] . "'";
$res = mysql_db_query($db,$sql,$con);
if ($user_2 = mysql_fetch_array($res))
{
$puntos_user_2 = $user_2[puntos];
}
if ($puntos_user_1<$_POST["puntos_a_dar"])
{
echo "Puntos insuficientes";
}else{
$puntos_user_2 = $puntos_user_2 + $_POST["puntos_a_dar"];
$puntos_user_1 = $puntos_user_1 - $_POST["puntos_a_dar"];
$sql = "update puntos set puntos='" . $puntos_user_2 . "' where user_id='" . $_POST["otro_id"] . "'";
mysql_db_query($db,$sql,$con);
$sql = "update puntos set puntos='" . $puntos_user_1 . "' where user_id='" . $_POST["tu_id"] . "'";
mysql_db_query($db,$sql,$con);
echo "Se suman " . $_POST["puntos_a_dar"] . " al usuario con id " . $_POST["otro_id"];
echo "";
echo "Tus puntos quedan ahora asi: " . $puntos_user_1;
}
?>
Si alguien pudiera decirme si tengo algo mal se lo agradeceria mucho!
Un saludo y gracias de antemano!
No puedo ver las imagenes...
"Deprecated function" es función obsoleta... normalmente se recomienda no usar, comúnmente se descontinuan por razones de eficiencia o seguridad
info aqui
http://www.php.net/manual/es/function.mysql-db-query.php (http://www.php.net/manual/es/function.mysql-db-query.php)
puedes sustituir mysql_db_query por
mysql_select_db($db);//esto necesitas hacerlo solo una vez, recomendado cuando hagas el connect
mysql_query ($sql);
pero pendiente porque esas dentro de poco serán obsoletas, deberías ir migrando a MySQLi :P
si quieres solo deshacerte el problema y no te importa nada coloca un @ antes de la función para que no genere errores aunque falle (cuidado con esto)
ya vi el otro error "mysql_fetch_array" lo usas asumiendo que siempre hay un resultado, y el te está diciendo que el resultado es vacio (no puede hacer nada) sabemos que el query devuelve "false" si no obtuvo resultados, entonces, puedes usar algo como
if($res){
if ($user_2 = mysql_fetch_array($res))
//aqui el resto del codigo
Como hay que decirlo...
NO UTILIZAR MYSQL, ESTA OBSOLETA. USAD MYSQLI o PDO.CitarThis extension is deprecated as of PHP 5.5.0, and is not recommended for writing new code as it will be removed in the future. Instead, either the mysqli or PDO_MySQL
http://www.php.net/manual/en/intro.mysql.php
Saludos
Cita de: @drvy en 10 Enero 2014, 00:29 AM
Como hay que decirlo...
NO UTILIZAR MYSQL, ESTA OBSOLETA. USAD MYSQLI o PDO.
http://www.php.net/manual/en/intro.mysql.php
Saludos
no seas dramático! no está obsoleta... aun no sale el PHP 5.5.0 apeeeenas en diciembre salio e. 5.4.23! ;D
Citarno seas dramático! no está obsoleta... aun no sale el PHP 5.5.0 apeeeenas en diciembre salio e. 5.4.23! ;D
De dramático nada, PDO esta desde 5.1 y mysqli desde 5.0 .. son mejores y están siendo mejoradas.. mysql ha pasado a estar en fase de mantenimiento (no habrá mas mejoras solo mantenimiento). Y, PHP 5.5 ya esta mas que disponible para Win y Linux.. que los repositorios de las distros no estén actualizadas es otro problema :)
(http://i.elhacker.net/i?i=y3QZSXG1SqXche6e4k8DKGVo) (http://i.elhacker.net/d?i=y3QZSXG1SqXche6e4k8DKGVo)
Saludos
drvy era bromeando :P no aceptas un chistesito! jejeje
incluso mira que la que el está usando era obsoleta en 5.3.0 XD
Cita de: engelx en 10 Enero 2014, 03:30 AM
drvy era bromeando :P no aceptas un chistesito! jejeje
incluso mira que la que el está usando era obsoleta en 5.3.0 XD
Yo es que esas cosas no me las tomo a broma... luego cuando los hosts se pasen a 5.5 inundaran el foro a preguntas de porque no funciona mysql_*..
En fin.. :xD
Saludos
Hola a todos gracias de verdad por ayudarme y responder tanto , ya entendi lo que me habeis posteado pero como puedo implementar esas lineas que dejo engelx , podias porfavor implementarlo al codigo que deje es que soy muy NOOB en esto y pues solo vi que habia que reemplasar. :P
Gracias una ves mas y un buen saludo a todos!