prepare($sql); $s->execute($a); return $s->fetch(PDO::FETCH_ASSOC); } $NOW='2026-06-20 10:50:00'; $RSGSI=326; $org=one($pdo,"SELECT id FROM organizations WHERE name=?",['Nuova Agile Technology srl']); if(!$org) exit("ORG mancante\n"); $orgId=(int)$org['id']; $m=one($pdo,"SELECT id FROM isms_models WHERE organization_id=?",[$orgId]); if(!$m) exit("ISMS model mancante: esegui Fase 3a\n"); $modelId=(int)$m['id']; $dir=__DIR__.'/_docs_na'; $files=glob($dir.'/*.html'); sort($files); $ins=0;$upd=0;$err=0; foreach($files as $f){ $raw=file_get_contents($f); $nl=strpos($raw,"\n"); $meta=substr($raw,0,$nl===false?strlen($raw):$nl); $body=ltrim(substr($raw,$nl===false?0:$nl+1)); if(!preg_match('/^/',$meta,$mm)){ echo " ! META KO ".basename($f)."\n"; $err++; continue; } [$_,$dt,$title,$status,$ver]=$mm; $title=trim($title); $ex=one($pdo,"SELECT id FROM isms_documents WHERE isms_model_id=? AND title=?",[$modelId,$title]); if($ex){ $st=$pdo->prepare("UPDATE isms_documents SET doc_type=?,body_html=?,status=?,version=?,ai_generated=1,updated_at=? WHERE id=?"); $st->execute([$dt,$body,$status,$ver,$NOW,$ex['id']]); $upd++; echo " ~ ".basename($f)." [$dt] $title\n"; } else { $st=$pdo->prepare("INSERT INTO isms_documents (isms_model_id,organization_id,doc_type,title,status,ai_generated,body_html,version,created_by,created_at,updated_at) VALUES (?,?,?,?,?,1,?,?,?,?,?)"); $st->execute([$modelId,$orgId,$dt,$title,$status,$body,$ver,$RSGSI,$NOW,$NOW]); $ins++; echo " + ".basename($f)." [$dt] $title\n"; } } echo "\nDOCUMENTI: +$ins inseriti, ~$upd aggiornati, $err errori. (file: ".count($files).")\n"; echo "FASE 3b OK — totale isms_documents per model $modelId: ".one($pdo,"SELECT COUNT(*) c FROM isms_documents WHERE isms_model_id=?",[$modelId])['c']."\n";