Avatar ·

¿Por qué no se deben usar las funciones obsoletas mysql_* en PHP y con qué reemplazarlas?

¡Hola a todos! Soy un desarrollador PHP principiante y estoy aprendiendo con libros antiguos y videos de YouTube. En todos los ejemplos, la conexión a la base de datos MySQL se hace mediante funciones como mysql_connect(), mysql_query(), etc. Todo me funciona, pero noté que en los tutoriales modernos no usan estas funciones. Es más, PhpStorm las subraya en rojo y dice "Deprecated". Así es como escribo el código ahora: ```php $link = mysql_connect('localhost', 'root', ''); mysql_select_db('myblog', $link); $result = mysql_query("SELECT * FROM users WHERE id = " . $_GET['id']); while ($row = mysql_fetch_assoc($result)) { echo $row['name']; } ``` Todo parece funcionar, pero he oído que es peligroso. ¿Pueden explicarme en palabras simples: por qué mysql_* es malo? ¿Y qué usar en su lugar? No necesito solo palabras como "están obsoletas", sino razones concretas. Y también, ¿cómo reescribir correctamente mi código para que sea moderno y seguro? ¡Gracias de antemano por una respuesta detallada! <<>>

¿Por qué mysql_* es malo?