Es que en $row_Recordset2 solo tienes un registro en cada momento, por eso solo puedes acceder a el. Tendrias que crear un array donde vas guardando todos los registros. Lo puedes hacer con un bucle:
Código PHP:
<?php
$query_Recordset2 = sprintf("SELECT CODARTICULO FROM articulo_pedidosp WHERE CODPEDIDO_P ='%s'", $colname_Recordset1);
$Recordset2 = mysql_query($query_Recordset2, $connProyecto) or die(mysql_error());
$recordset=array(); //inicializamos el array
while ($row_Recordset2 = mysql_fetch_assoc($Recordset2)) {
$recordset[]=$row_Recordset2;
}
?>
<input type="hidden" name="array" value="<?php echo array_envia($recordset)?>">
Y luego recibes en $array un array bidimensional, donde $array[0] seria el primer registro, $array[1] el segundo ... y accedes alos campo $array[0]['nombre_campo'].
Por cierto, con mysql_data_seek() no avanzas en el recordset, sino con mysql_fetch_assoc(). Es mas, tal como usas mysql_data_seek(), te vuelves a posicionar en el primer registro del recordset.
Saludos.