sql >> Database teknologi >  >> RDS >> Mysql

binært filindhold vist i php print_r, men ikke gemt i mysql

RTM ;-)

Så jeg har aldrig selv gjort dette, men jeg vil antage, at det skal se sådan ud baseret på din kode og eksempel på funktionsdokumentsiden :

    $filepath = ini_get('upload_tmp_dir')."/".basename($_FILES['file'.$i]['tmp_name']);
    $filepath = addslashes($filepath);
    $handle = fopen($filepath, "rb");
    $content = null;

    $stmt = $mysqli->prepare("INSERT INTO attachment (filename,filecontent,mkey) VALUES (?,?,?)");
    $stmt->bind_param("sbi",$_FILES['file'.$i]['name'], $content, $mkey);

    while (!feof($handle)) {
        // $maxPacketSize would be the size of your max packet setting for mysql,
        // or something safely assumed to be below it
        $stmt->send_long_data(1, fread($handle, $maxPacketSize));
    }
    fclose($handle);
    $stmt->execute();



  1. Opgradering af din database til PostgreSQL version 10 - hvad du bør vide

  2. Kontroller codeigniter-forespørgselsfejl i stedet for at vise dem til brugeren

  3. Kan ikke finde nulværdi fra JSON_EXTRACT

  4. Brug af forskellige MySQL-lagringsmotorer i databasedesign