Edicion: Parece que tarde mucho con la respuesta.
Se supone que con esto:
$praiz = $_POST['praiz']; ya tienes la ID de categoria (producto raiz), despues haces una consulta adicional medio rara porque:
Código PHP:
Ver original// Estas buscando por nombre, cuando se supone que ya tienes la ID
$res = mysql_query("select id from tbl_praiz where nombre like = '$praiz'");
// Que pasa si la consulta no devuelve resultados?
// ... Sera error del usuario por no seleccionar una categoria, pero
// ... aparecera error de PHP con la siguiente linea
echo $res['id'];
// Luego, se supone que tienes la id en $res['id'], pero...
// ... usas $praiz en la consulta:
$sql = "INSERT INTO `keepers_com_ar_-_noticias`.`tb_fotos` ( `Foto`, `praiz`, `nproducto`, `tipoproducto`, `Descripcion`) VALUES ( '$nombre', '$praiz', '$nproducto', '$tipoproducto', '$descripcion');";
La respuesta facil:
Despues de ejecutar la consulta para buscar la categoria bastaria con agregar esta linea
$praiz = $res['id'];
La respuesta dificil:
Tienes varios problemas con la logica, comenzando por como armas el select y el supuesto valor de ID que ya debiera darte; si no se selecciono una categoria no deberias permitir que se inserte el registro; no escapas los datos alfanumericos antes de incluirlos en una consulta; etc.