apprentice-team-3 / team-weekly-report

Team Weekly Reportのリポジトリです。
0 stars 0 forks source link

PHPにfetch通信できない #320

Closed YNSTakeru closed 5 months ago

YNSTakeru commented 5 months ago

めっちゃ惜しい、obj_start()っていう宣言してない関数が悪さしてた可能性あります>< 修正したコード

<?php
require_once __DIR__ . '/../DataSource.php';
use db\DataSource;
use model\ChildTask;
use model\ParentTask;

// jsで送られてきたデータを取得
$data = json_decode(file_get_contents('php://input'), true);

try {
    $db = new DataSource;
    $db->begin();

    // 親タスクの登録
    $parentSql = 'INSERT INTO parent_tasks (project_id, user_id, title, progress) VALUES (:project_id, :user_id, :title, :progress)';
    $db->execute($parentSql, [
        ':project_id' => $data["project_id"],
        ':user_id' => $data["user_id"],
        ':title' => $data["parent_task_name"],
        ':progress' => $data["parent_task_progress"]
    ]);

    // 子タスクの登録
    if ($parentTaskId) {
        $childSql = "INSERT INTO child_tasks (parent_task_id, title, content, progress) VALUES (:parent_task_id, :title, :content, :progress)";

        foreach ($data["child_tasks"] as $childTask) {
            $db->execute($childSql, [
                ':parent_task_id' => $parentTaskId,
                ':title' => $childTask["childTaskName"],
                ':content' => $childTask["comment"],
                ':progress' => $childTask["progress"]
            ]);
        }
        $db->commit();
    }

    echo json_encode(['message' => 'タスク登録成功!']);
} catch(PDOException $e) {
    echo json_encode(['message' => '時間をおいて再度お試しください。']);
    $db->rollback();
}
?>