Additonal Info. You really should Quote the Rule. This should be your lines for ANY php version. As noted above, you should have a RewriteCond for each script?.php file so that you prevent apache from an endless loop.
RewriteRule "^([0-9] )/(.*)-([0-9] )\.html$ script1.php?cat_id=$1&page=$3" [NC,L]
# rewrites the script2.php URLs using P- and /
RewriteRule "^P-([0-9] )/(.*)\.html$ script2.php?id=$1" [NC,L]
# rewrites the script3.php URLs
RewriteRule "^([0-9] )-(.*)\.html$ script3.php?id=$1" [NC,L]