Mysql
02.02.2024
Yazar: Admin
Bir tabloda yapılan kayıt silme işlemlerinden sonra, arada oluşan boşlukları aradan kaldırmak ve düzenlemek amacıyla, AUTO_INCREMENT değeri içeren sütundaki değerleri 1'den itibaren yeniden sıralama ve AUTO_INCREMENT değerini en son satır değerinden bir sonraki değere ayarlama işlemlerini aşağıdaki komutları kullanarak gerçekleştirebiliriz:
SET @count = 0;
UPDATE table_name SET table_name.id = @count:= @count + 1;
ALTER TABLE table_name AUTO_INCREMENT = 1
ALTER TABLE table_name AUTO_INCREMENT = 1 komutu tablonun AUTO_INCREMENT değerini, 1 sayısına değil, otomatik artan değerleri içeren sütunda yer alan maksimum değerin bir fazlasına ayarlar.
Php
01.02.2024
Yazar: Admin
Bir veritabanına kaydedilen web sayfa içeriklerindeki belirli dosyalara ait yol tanımlamalarını, proje web sayfalarında kullanabilmek için, veriyi veritabanından okuttuktan sonra, str_replace() fonksiyonu ile verideki yol tanımlarının başına proje ana dizinini ekleyebiliriz.
Aşağıdaki örnekte, public/images/ dizisi içinde bulunan image1.png adlı bir resim dosyası tanımlanarak oluşturulan bir sayfa içeriği okunduktan sonra ROOT değeri tüm image yol tanımlamalarının başına eklendikten sonra işlem yapılmaktadır.
$rDir = '/mysite/'; // Yerel sunucuda proje dizin adı
define('ROOT', ($_SERVER['SERVER_NAME']==='localhost') ? $rDir : '/'); // Yerel sunucu ise ROOT değeri '/mysite/' değilse '/'
$icerik = 'public/images/image1.png'; // İçerik okuma işlemi
$icerik = str_replace('src="public/images', 'src="' . ROOT . 'public/images/image1.png', $icerik);
echo $icerik;
Mysql
31.01.2024
Yazar: Admin
UPDATE TableB
INNER JOIN TableA ON TableA.columnT = TableB.ColumnV
SET TableB.columnY = TableA.columnZ
UPDATE TableB
SET TableB. columnY = (
SELECT TableA. columnZ
FROM TableA
WHERE TableA.columnT = TableB.ColumnV
)
Php
02.01.2024
Yazar: Admin
PHP kodları ile ilgili olarak aşağıdakine benzer bir hata mesajı alıyorsanız:
Fatal error: Uncaught TypeError: strpos(): Argument #1 ($haystack) must be of type string, array given
Bu sorunu çözmek için, strpos() fonksiyonu yerine in_array() fonksiyonunu kullanabilirsiniz:
strpos(string,find,start)
in_array(search, array, type)
WampServer
01.01.2024
Yazar: Admin
Bilgisayarımızda kurulu Wampserver programının ön tanımlı depolama motorunu değiştirmek için, mysql dizinindeki my.ini dosyasındaki default_storage_engine değerini InnoDB olarak belirlemek yeterli olacaktır.
Wampserver 3.0.0 programının C sürücüsünde kurulu olduğunu kabul edersek, my.ini dosyasının içinde bulunduğu mysql dizininin yol tanımlaması aşağıdaki şekilde olacaktır:
C:\\wamp\\bin\\mysql\\mysql8.0.31
Ön tanımlı depolama motorunu MyISAM yerine InnoDB olarak değiştirmek için, bu dizindeki my.ini dosyasındaki default_storage_engine satırı aşağıdaki şekilde olacaktır:
default_storage_engine=InnoDB
Wampserver programını kapatıp tekrar açtığımızda, ön tanımlı depolama motoru InnoDB olacaktır.
Php
13.11.2023
Yazar: Admin
PHPMailer kütüphanesini kullanarak e-posta gönderirken,
SMTP Error: Could not connect to SMTP host. Connection failed. stream_socket_enable_crypto()
şeklinde bir hata mesajı aldığımızda, aşağıda gösterilen yöntemle, SMTPOptions değerini ekleyerek, bu sorunu çözebiliriz:
use PHPMailer\PHPMailer\PHPMailer;
use PHPMailer\PHPMailer\SMTP;
use PHPMailer\PHPMailer\Exception;
require 'vendor/autoload.php';
$mail = new PHPMailer();
$mail->SMTPOptions = array(
'ssl' => array(
'verify_peer' => false,
'verify_peer_name' => false,
'allow_self_signed' => true
)
);
$mail->isSMTP();
$mail->Host = 'xxxx.xxxxxxxxxxxxxxxx.com'; // E-posta sunucu adresi
$mail->SMTPAuth = true;
$mail->CharSet = 'UTF-8';
$mail->Username = 'xxxxxx@xxxxxxxxxxxxx.com'; // E-posta sunucu kullanıcı adı
$mail->Password = 'parola'; // E-posta sunucu parolası
$mail->Port = 587; // Sunucu port adresi farklılık gösterebilir.
$mail->setFrom('xxxxxx@xxxxxxxxxxxxx.com', 'Gönderen'); // Gönderen
$mail->addAddress('xxxxxx@xxxxxxx.com'); // Alıcı
$mail->isHTML(true);
$mail->Subject = 'E-posta konu başlığı';
$mail->Body = 'E-posta içeriği';
if (!$mail->send()) {
echo 'E-posta gönderme hatası: ' . $mail->ErrorInfo;
}
else {
echo 'Mesaj gönderildi!';
}
Borsa
07.06.2023
Yazar: Admin
8 Haziran 2023 tarihinden itibaren borsa ile ilgili yaptığımız çalışmaları paylaşmak amacıyla oluşturduğumuz Borsa Youtube kanalımız ve Twitter hesabımız yayına başlayacaktır.
Her yatırımcının başlangıçtan itibaren ihtiyaç duyacağı kullanım ve programlama alanlarındaki temel ve ileri seviye bilgileri uygulamalı olarak verilecektir.
Twitter hesabımız üzerinden,
Youtube kanalımızda aşağıda belirtilen konularda içerik sunulacaktır:
Ayrıca her iki hesap üzerinden ortak içerik sunulacaktır:
Python
27.07.2021
Yazar: Admin
Python genel amaçlı, yüksek seviyeli, yorumlanan, dinamik algılama yapısına sahip ve nesneye dayalı olarak kullanılabilen bir programlama dilidir. Bazı gelişim ve güvenlik güncellemeleri ile piyasaya sürülen Python 3.9.6 sürümü, yeni modüller, mevcut modüllerin geliştirilmiş sürümünü ve yeni özellikler içermektedir.
Debian tabanlı Linux dağıtımının çoğunda, Python'ın eski sürümleri otomatik olarak yüklü bir şekilde gelir. MX Linux 19.4.1 sürümü ile birlikte gelen Python'ın 2.7.16 sürümüdür.
Bu yazıda, Python 3.9.6 sürümünü kaynak koddan derleyerek, Debian tabanlı bir sistem olan MX Linux işletim sisteminde sistemlere kurmayı anlatmaya çalışacağız:
MX Linux 19.4.1 işletim sisteminde Python 3.9.6 kurulumu gerçekleştirmek için:
Sistemi hazırlama
1. Sudo ayrıcalıklı hesap erişimiyle MX Linux işletim sistemine giriş yapalım. Ctrl + Alt + T tuş bileşeni ile bir terminal penceresi açalım ve sistemde yüklü paketlerin güncellenmesi ve son sürümlerine yükseltilmesi için aşağıdaki komutu çalıştıralım:
$ sudo apt update && sudo apt upgrade
2. Python kaynak kodlarının derlenmesinde kullanılacak paketlerin kurulması için aşağıdaki komutu çalıştıralım:
$ sudo apt install wget build-essential libreadline-gplv2-dev libncursesw5-dev \
libssl-dev libsqlite3-dev tk-dev libgdbm-dev libc6-dev libbz2-dev libffi-dev zlib1g-dev
Python 3.9.6 sürümünü kaynak kodu ile kurma
1. Bu bağlantıya tıklayarak veya aşağıda gösterilen komutu çalıştırarak Python 3.9.6 kaynak kod dosyasını indirelim:
$ wget https://www.python.org/ftp/python/3.9.6/Python-3.9.6.tgz
2. Bilgisayarımıza indirdiğimiz dosyayı üzerine çift tıklayarak veya aşağıda gösterilen komutu çalıştırarak açalım:
$ tar xzf Python-3.9.6.tgz
3. Aşağıdaki komut ile dosyayı açtığımız dizine geçiş yapalım:
$ cd Python-3.9.6
4. Aşağıdaki komut ile Python kaynak kodunu sistemimizde derlemek üzere hazırlayalım:
$ ./configure --enable-optimizations
5. Aşağıdaki komut Python kurulumunu gerçekleştirelim:
$ make altinstall
Bu işlem biraz zaman alabilir. İşlem sürecini terminal penceresinden takip edebiliriz.
6. Terminal penceresinde sadece python ifadesini kullandığımızda, sistem Python 2.7.16 sürümünün ortamına geçiş yapar. Python 3.9.6 sürümünün ortamına geçiş yapmak için aşağıdaki komutu kullanmamız gerekir:
$ python3.9