$string="1. Tim Moltzen, 2. Joel Reddy, 3. Blake Ayshford, 4. Chris Lawrence, 5. James Tedesco, 6. Benji Marshall, 7. Braith Anasta, 8. Aaron Woods, 9. Robbie Farah, 10. Jack Buchanan, 11. Bodene Thompson, 12. Liam Fulton, 13. Adam Blair, 14. Ben Murdoch Masila, 15. Ava Seumanufagai 16. Matt Bell, 17. Eddy Pettybourne";
$string=explode(', ',$string);
foreach($string as $val)
{
$val=explode('. ',$val);
mysql_query('INSERT INTO yourtable (col_number,col_name) VALUES ("'.$val[0].'.","'.$val[1].'")';
}
Nie rozumiem, dlaczego chcesz wstawić kropkę wraz z liczbą, ponieważ oznaczałoby to, że kolumna musi niepotrzebnie być varchar zamiast INT. W każdym razie jest tak, jak prosiłeś.
Zmień mysql_query
do mysqli_query
jeśli wolisz.
Aby rozbić między liczbami, użyj:
$string=preg_split('/ ?[0-9]+\.? /', $string, NULL, PREG_SPLIT_NO_EMPTY);
Ale teraz nie masz żadnych numerów dla każdego nazwiska. Więc nie będziesz mógł go wstawić w ten sposób.