📁 PHP Dosya Yöneticisi
/
/
home
/
demodesigncom
/
reelsolusturmascripti.demodesign.com.tr
/
system
/
ajax
📝
create_icerik.php
← Geri Dön
<?php include '../../config.php'; include '../inc/sitedata.php'; $referer = $_SERVER['HTTP_REFERER']; if ($referer == "") { echo "<script>location='../../home.php'; </script>"; die; } if($_POST){ $id = $_POST['aaid']; $queryCek = mysqli_query($connect, "SELECT * FROM icerikler WHERE id = '$id'"); if(mysqli_affected_rows($connect)){ //VERİLERİ AL $queryDataGet = mysqli_query($connect, "SELECT * FROM icerikler WHERE id = '$id'"); $fetchDataGet = mysqli_fetch_array($queryDataGet); $videoFile = $fetchDataGet['outputfile']; $sesFile = $fetchDataGet['sesdosyasi']; $icerikozetD = $fetchDataGet['icerikozet']; $promptsonuc = $fetchDataGet['promptsonuc']; $soundsrtmetin = $fetchDataGet['soundsrtmetin']; $icerikfont = $fetchDataGet['icerikfont']; //SRT JSON FORMATINDAKİ METİNDEN SADECE SES START END ALANLARINI AL $parcalar = json_decode($soundsrtmetin, true); $baslangicBitis = array(); foreach ($parcalar as $parca) { $baslangic = number_format((float)$parca['start'], 2, '.', ''); $bitis = number_format((float)$parca['end'], 2, '.', ''); $baslangicBitis[] = array( 'start' => $baslangic, 'end' => $bitis ); } // Sonucu JSON formatında oluştur //SEO HALE GETİR function seoFriendlyUrl($str) { // Türkçe karakterleri dönüştürmek $turkce = array('ş', 'Ş', 'ı', 'İ', 'ç', 'Ç', 'ü', 'Ü', 'ö', 'Ö', 'ğ', 'Ğ'); $duzgun = array('s', 'S', 'i', 'I', 'c', 'C', 'u', 'U', 'o', 'O', 'g', 'G'); $str = str_replace($turkce, $duzgun, $str); // Büyük harfleri küçük harfe dönüştürmek $str = strtolower($str); // Geçersiz karakterleri kaldırmak $str = preg_replace('/[^a-z0-9\s-]/', '', $str); // Boşlukları tire ile değiştirmek $str = preg_replace('/[\s-]+/', '-', $str); // Tekrarlayan tireleri tek bir tireye indirmek $str = preg_replace('/-+/', '-', $str); // Başta ve sonda olan tireleri kaldırmak $str = trim($str, '-'); return $str; } $seoUrl = seoFriendlyUrl($icerikozetD); $randido = rand(11111111,99999999); $seoUrl = "$seoUrl-$randido"; $tamName = "reelscreate_$seoUrl.mp4"; //İŞLEMEYE BAŞLIYORUZ : BU ALANDA METNİ PARÇA PARÇA VİDEO EKRANINA BASACAĞIZ FONTLA. $jsonSonuc = json_encode($baslangicBitis); $inputVideo = '../../downloaded/'.$videoFile.''; // Giriş videosu $outputVideo = '../../created_videos/'.$tamName.''; // Çıkış videosu $text = ''.$promptsonuc.''; // Videoya yazılacak metin $fontFile = '../fonts/'.$icerikfont.''; // Font dosyasının yolu $fontSize = 120; // Font boyutu $fontColor = 'yellow'; // Font rengi $borderColor = 'black'; // Kenarlık rengi $borderSize = 5; // Kenarlık boyutu $words = explode(' ', $text); $veriDizisi = json_decode($jsonSonuc, true); $drawtextCommands = []; foreach ($words as $index => $word) { // JSON'dan ilgili süreleri al $startTime = $veriDizisi[$index]['start']; $endTime = $veriDizisi[$index]['end']; // Drawtext komutları oluştur $drawtextCommands[] = "drawtext=text='$word':fontfile=$fontFile:fontcolor=$borderColor:fontsize=" . ($fontSize + $borderSize) . ":x=(w-text_w)/2:y=(h-text_h)/2:enable='between(t,$startTime,$endTime)'"; $drawtextCommands[] = "drawtext=text='$word':fontfile=$fontFile:fontcolor=$fontColor:fontsize=$fontSize:x=(w-text_w)/2:y=(h-text_h)/2:enable='between(t,$startTime,$endTime)'"; } $drawtextFilter = implode(',', $drawtextCommands); $cmd = "ffmpeg -i $inputVideo -vf \"$drawtextFilter\" -codec:a copy $outputVideo"; $output = shell_exec($cmd); if (strpos($output, 'ffmpeg') !== false || strpos($output, 'Error') !== false) { echo '98'; die; }else{ $updateDatDat = mysqli_query($connect, "UPDATE icerikler SET icerikolustur = 1 WHERE id = '$id'"); $updateDatDat2 = mysqli_query($connect, "UPDATE icerikler SET sonicerikhali = '$tamName' WHERE id = '$id'"); if($updateDatDat and $updateDatDat2){ echo '0'; }else{ echo '2'; } } } }else { echo '1'; } ?>
💾 Kaydet
İptal
📝 Yeniden Adlandır
İptal
Kaydet
🔐 Dosya İzinleri (chmod)
İzin Değeri:
Hızlı Seçim:
777
755
644
600
777
= Herkes okur/yazar/çalıştırır
755
= Sahip tam, diğerleri okur/çalıştırır
644
= Sahip okur/yazar, diğerleri okur
600
= Sadece sahip okur/yazar
İptal
Uygula