Bu şekilde hallettim.
<?php
if(isset($_FILES['dosya'])) {
$ad = $_POST['ad'];
$ozellik = $_POST['ozellik'];
$kategori = $_POST['kategori'];
$eskifiyat = $_POST['eskifiyat'];
$yenifiyat = $_POST['yenifiyat'];
$indirimlifiyat = $_POST['indirimlifiyat'];
$urunsayisi = $_POST['urunsayisi'];
$urunalani = $_POST['urunalani'];
foreach($ad as $index => $names) {
$s_ad = $names;
$s_ozellik = $ozellik[$index];
$s_kategori = $kategori[$index];
$s_eskifiyat = $eskifiyat[$index];
$s_yenifiyat = $yenifiyat[$index];
$s_indirimlifiyat = $indirimlifiyat[$index];
$s_urunsayisi = $urunsayisi[$index];
$s_urunalani = $urunalani[$index];
$dosya_sayisi = count($_FILES['dosya']["name"]);
for($i=0; $i<$dosya_sayisi; $i++) {
$dosya_adi = $_FILES['dosya']["name"][$i];
$gecici_yol = $_FILES['dosya']["tmp_name"][$i];
$dosya_tipi = $_FILES['dosya']["type"][$i];
$dosya_boyutu = $_FILES['dosya']["size"][$i];
if($dosya_boyutu > (1024*1024*3)) { ?>
<div style="margin-top:25px; text-align:center; font-size:30px;">
<?php
echo "Dosya Boyutu 3 MB'dan Büyük Olamaz <br>";
echo "Form Sayfasına Gitmek İçin";
?>
<a href="urunekle.php" style="color:blue;">Tıklayınız</a>
</div>
<?php
exit;
}
if(!($dosya_tipi=="image/jpeg" || $dosya_tipi=="image/jpg" || $dosya_tipi=="image/png")) { ?>
<div style="margin-top:25px; text-align:center; font-size:30px;">
<?php
echo "Sadece Jpeg, Jpg ve Png Yükleyebilirsiniz <br>";
echo "Form Sayfasına Gitmek İçin";
?>
<a href="urunekle.php" style="color:blue;">Tıklayınız</a>
</div>
<?php
exit;
}
if(move_uploaded_file($gecici_yol,"../../images/indexurunler/" . $dosya_adi)) {
$sorgualani = "INSERT INTO indexsayfaurun (urun_resim, urun_ad, urun_ozellik, urun_kategori,
urun_eskifiyat, urun_yenifiyat, urun_indirimlifiyat,
urun_sayisi, urun_alani)
VALUES ('$dosya_adi', '$s_ad', '$s_ozellik', '$s_kategori', '$s_eskifiyat', '$s_yenifiyat', '$s_indirimlifiyat', '$s_urunsayisi', '$s_urunalani')";
$sorgu = mysqli_query($db, $sorgualani);
}
}
}
if($sorgu) { ?>
<div style="margin-top:25px; text-align:center; font-size:30px;">
<?php
echo "Ürün Kaydedildi";
?>
</div>
<?php
// header("Refresh:3; url=urunekle.php");
} else { ?>
<div style="margin-top:25px; text-align:center; font-size:30px;">
<?php
echo "Ürün Eklenemedi <br>";
header("Refresh:3; url=urunekle.php");
?>
</div>
<?php
}
}
?>
Cevap veren yok mu arkadaşlar.
Şu iki alanı birleştirmem lazım.
Çoklu kaydetme.php
if($_POST) {
$ad = $_POST['ad'];
$ozellik = $_POST['ozellik'];
$kategori = $_POST['kategori'];
$eskifiyat = $_POST['eskifiyat'];
$yenifiyat = $_POST['yenifiyat'];
$indirimlifiyat = $_POST['indirimlifiyat'];
$urunsayisi = $_POST['urunsayisi'];
$urunalani = $_POST['urunalani'];
foreach($ad as $index => $names) {
$s_ad = $names;
$s_ozellik = $ozellik[$index];
$s_kategori = $kategori[$index];
$s_eskifiyat = $eskifiyat[$index];
$s_yenifiyat = $yenifiyat[$index];
$s_indirimlifiyat = $indirimlifiyat[$index];
$s_urunsayisi = $urunsayisi[$index];
$s_urunalani = $urunalani[$index];
$sorgualani = "INSERT INTO indexsayfaurun (urun_ad, urun_ozellik, urun_kategori, urun_eskifiyat,
urun_yenifiyat, urun_indirimlifiyat, urun_sayisi,
urun_alani) VALUES ('$s_ad', '$s_ozellik', '$s_kategori', '$s_eskifiyat', '$s_yenifiyat', '$s_indirimlifiyat', '$s_urunsayisi', '$s_urunalani')";
}
$sorgu = mysqli_query($db, $sorgualani);
if($sorgu) {
echo "tamam";
} else {
echo "olmadı";
}
}
if(isset($_POST['resim-yukle'])){
$dizin_yol = "../yuklenenler";
$dosya_adet = count($_FILES['dosya']['name']);
$dosya_tipi = $_FILES['dosya']["type"];
$dosya_boyutu = $_FILES['dosya']["size"];
if($dosya_boyutu > (1024*1024*3)) { ?>
<div style="margin-top:25px; text-align:center; font-size:30px;">
<?php
echo "Dosya Boyutu 3 MB'dan Büyük Olamaz <br>";
echo "Form Sayfasına Gitmek İçin";
?>
<a href="urunekle.php" style="color:blue;">Tıklayınız</a>
</div>
<?php
exit;
}
if(!($dosya_tipi=="image/jpeg" || $dosya_tipi=="image/jpg" || $dosya_tipi=="image/png")) { ?>
<div style="margin-top:25px; text-align:center; font-size:30px;">
<?php
echo "Sadece Jpeg, Jpg ve Png Yükleyebilirsiniz <br>";
echo "Form Sayfasına Gitmek İçin";
?>
<a href="urunekle.php" style="color:blue;">Tıklayınız</a>
</div>
<?php
exit;
}
for($i=0; $i<$dosya_adet; $i++) {
if (!empty($_FILES['dosya']['name'][$i])) {
move_uploaded_file($_FILES['dosya']['tmp_name'][$i], $dizin_yol . "/" . $_FILES['dosya']['name'][$i]);
header("Location: ?dosya=yuklendi");
}
}
}
Değişkenlerin başına "$" işareti koymamışım. Onu da hallettim. Şöyle bir problem oluştu. "Uninitialized string offset: 1 in" diye bir hata alıyorum.
Yapmak istediğim bu ama veritabanına değişken isimleri kaydediyor. Tek sıkıntı bu şu an.
if(isset($_POST['eklemeyap'])) {
$ad = $_POST['ad'];
$ozellik = $_POST['ozellik'];
$kategori = $_POST['kategori'];
$eskifiyat = $_POST['eskifiyat'];
$yenifiyat = $_POST['yenifiyat'];
$indirimlifiyat = $_POST['indirimlifiyat'];
$urunsayisi = $_POST['urunsayisi'];
$urunalani = $_POST['urunalani'];
foreach($ad as $index => $names) {
$s_name = $names;
$s_ozellik = $ozellik[$index];
$s_kategori = $kategori[$index];
$s_eskifiyat = $eskifiyat[$index];
$s_yenifiyat = $yenifiyat[$index];
$s_indirimlifiyat = $indirimlifiyat[$index];
$s_urunsayisi = $urunsayisi[$index];
$s_urunalani = $urunalani[$index];
$sorgualani = "INSERT INTO indexsayfaurun (urun_ad, urun_ozellik, urun_kategori, urun_eskifiyat,
urun_yenifiyat, urun_indirimlifiyat, urun_sayisi,
urun_alani) VALUES ('s_name', 's_ozellik', 's_kategori',
's_eskifiyat', 's_yenifiyat', 's_indirimlifiyat',
's_urunsayisi', 's_urunalani')";
$sorgu = mysqli_query($db, $sorgualani);
if($sorgu) {
echo "tamam";
} else {
echo "olmadı";
}
}
}
Allah'ın bir kulu da şunu bana mysqli_query tarzında yapsın ya!. Üç yıldır yapamadım arkadaş ya!
Merhabalar. Şöyle anlatayım. Bir formum var. Bu formda "ürün adı", "ürün özellikleri", "select-option alanı" vs. var. Ben çoklu resim eklemek istiyorum. Bunu da galiba şöyle yapmam lazım.
"resim1.jpg, şortlar, deniz kıyafetleri"
"resim2.jpg, şortlar, deniz kıyafetleri"
"resim3.jpg, şortlar, deniz kıyafetleri"
şeklinde yapmam lazım galiba. Burada değişen sadece resimler olacak. Veritabanına bu şekilde kaydedilecek. Ben başka bir şekilde nasıl olur bilemiyorum. Yazdıklarınızdan birincisini anladım ama ikincisinde "cascade" i anlayamadım. Sizce json formatında mı kaydetmeliyim. Daha önemlisi, formdan gelen çoklu resim ve o resme ait diğer input bilgilerini veritabanına kaydedemedim. Bir örnek varsa koyabilir misiniz?
Ben dosyaları çoklu yükleme konusunda sıkıntı yaşamıyorum. Veritabanına çoklu kayıt yapamadım ben.
Burada aşama aşama ne yaptığınızı anlatabilir misiniz? Bir de bazı sorular sorayım.
window.onload = () =>
Bu kısımdaki "() =>" kısmı fonksiyon oluşturmamı oluyor?
":" ve "?" nin görevi ne acaba? Hani php'de yanlış hatırlamıyorsam "else" gibi bir anlamı vardı. Buradaki görevi nedir acaba?
Bir de bu "dataset.target" nedir?
Aşama aşama anlatabilirseniz daha iyi olur.
Aşağıdaki kodlarla enter'a her bastığımda ekrana, alt alta veri yazdırabiliyorum. Ama veriler arasındaki virgülü kaldıramadım. Nasıl yapılabilir?
var alt_satira_gec = "<br>";
var dizi = [];
var yazilacakicerik = document.getElementById("yazilacakicerik");
var verigoster = () => {
document.getElementById("cikti").innerHTML = [dizi];
}
yazilacakicerik.addEventListener("keyup", (olay) => {
if(olay.keyCode === 13 && yazilacakicerik.value !== "") {
dizi.push(yazilacakicerik.value + alt_satira_gec);
yazilacakicerik.value = ""
verigoster();
}
});