Landslides and flooding killed at least 31 people as heavy rain from an approaching storm lashed the southern Philippines, a disaster official said Friday.
The storm unleashed flash floods carrying uprooted trees, rocks and mud overnight in nine mostly rural towns around Cotabato, a city of 300,000 people on Mindanao island.
Many residents were caught by surprise as floodwaters rose rapidly before dawn, Naguib Sinarimbo, the spokesman and civil defense chief for the regional government, told Agence France-Presse (AFP).
Rescuers retrieved 16 bodies from Datu Odin Sinsuat, 10 from Datu Blah Sinsuat and five from Upi town, with at least seven other people missing, he told reporters.
A rescue team was also dispatched to a remote village after relatives reported that a community at the foot of a mountain was buried by mud, he said.
"Our fear is that there may be many casualties there, though we hope not," Sinarimbo said, adding the rescuers have yet to brief him on the progress of the search.
Elsewhere, teams in rubber boats rescued residents from rooftops, Sinarimbo added.
In recent years, flash floods with mud and debris from largely deforested mountainsides have been among the deadliest hazards posed by typhoons on Philippine communities.
Mindanao is rarely hit by the 20 or so typhoons that strike the Philippines each year. But those that do tend to be deadlier than those that hit Luzon, the main island.
A long mountain range walls off most of Luzon from the Pacific, where most storms are spawned, helping to absorb the blow, the state weather service said.
Local filmmaker Remar Pablo told AFP he was shooting a beauty pageant in the town of Upi when the floodwaters suddenly came in after midnight and forced audience members to flee.
A row of cars sat half-submerged on the street outside, his clips showed.
"We were stranded inside," said Pablo, who eventually waded through the water to get home.
Rescuers carried a baby in a plastic tub as they navigated chest-deep water, a photo posted by the provincial police showed.
Floodwaters have receded in several areas, but Cotabato City remained almost entirely waterlogged.
Sinarimbo said there could be more flooding over the next few hours because of heavy rain over mountains surrounding the Cotabato river basin.
"Our focus at this time is rescue as well as setting up community kitchens for the survivors," he said.
The army deployed its trucks to collect stranded residents in Cotabato and nearby towns, provincial civil defense chief Nasrullah Imam said.
"It was a shock to see municipalities which had never flooded getting hit this time," Imam said, adding that some families were swept away when the waters hit their homes.
The heavy rainfall began late Thursday in the impoverished region, which is under Muslim self-rule after decades of separatist armed rebellion.
The state weather office in Manila said it was partly caused by Tropical Storm Nalgae, which it expects to strengthen at landfall.
Nalgae was heading northwest with maximum winds of 85 kilometers (53 miles) an hour and could hit Samar island late Friday or the Bicol peninsula on the southern tip of Luzon overnight.
Nearly 5,000 people were evacuated from flood- and landslide-prone communities in these areas, the civil defense office said.
The coast guard also suspended ferry services in much of the archipelago nation where tens of thousands of people board boats each day.
Scientists have warned that storms, which kill people and livestock and destroy farms, houses, roads and bridges, are becoming more powerful as the world gets warmer because of climate change.