Creo que esta muy bien pensado como haces el login, buscar solo el usuario, si lo encuentras, comparar contraseña y de ahi permitir o no el acceso.
Ahora, el problema, como bien apunta
skiper0125 es que debes usar UPDATE y no INSERT, de hecho en INSERT no puedes usar WHERE.
La consulta seria mas o menos asi:
Código SQL:
Ver originalUPDATE registro SET url = '$urlnueva' WHERE username = '$username'
Para saber si hay algun error al ejecutar la consulta, siempre agrega al final:
$consulta = mysql_query(/* aqui tu consulta */)
or die('Error: ' . mysql_error());
Solo como aclaracion respecto al comentario de
Sourcegeek, conozco 3 formas para hacer el INSERT:
Código SQL:
Ver original-- Lista de campos y lista de valores
INSERT INTO tabla (campo1, campo2, campo3) VALUES (valor1, valor2, valor3);
-- Lista de valores, solo funciona cuando incluyes un valor para cada campo de la tabla
INSERT INTO tabla VALUES (valor1, valor2, valor3)
-- Usando SET
INSERT INTO tabla SET campo1 = valor1, campo2 = valor2, campo3 = valor3
Definitivamente prefiero SET ya que en las otras dos formas es mas facil que se te escape algun campo o valor, aunque ahora me gusta mas PDO.