Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

conteúdo do arquivo binário mostrado no php print_r mas não salvo no mysql


RTM ;-)

Então, eu nunca fiz isso sozinho, mas suponho que precisa ser algo assim com base no seu código e no exemplo na página do documento de funções :
    $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();