Witam. Tworzę wsparcie dla działań magazynowych. Chodzi o to żeby po pobraniu materiału z magazynu wysyłał się mail z informacją dla kogo i co zostało pobrane (w postaci listy).
Od strony bazy wszystko jest ok, natomiast w kodzie jest błąd/błędy, bo mail się nie wysyła. Proszę o pomoc.
<?php session_start();
require_once('db/db.php');
?>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body>
<?php
$klient = mysqli_real_escape_string($connect, $_POST['klient']);
function klient_nazwa()
{
global $connect;
$wynik3='';
$query3="SELECT klient_id FROM klienci WHERE id='".$_POST['klient']."'";
$result3=mysqli_query($connect, $query3);
if($result3)
{
while($dat3=mysqli_fetch_assoc($result3))
$wynik3.=''.$dat3['klient_id'].'';
}
return $wynik3;
}
function klient_mail()
{
global $connect;
$wynik3='';
$query3="SELECT adres_mail FROM klienci WHERE id='".$_POST['klient']."'";
$result3=mysqli_query($connect, $query3);
if($result3)
{
while($dat3=mysqli_fetch_assoc($result3))
$wynik3.=''.$dat3['adres_mail'].'';
}
return $wynik3;
}
// odbieramy dane z formularza
$data_pobr = mysqli_real_escape_string($connect, $_POST['data_pobr']);
$nr_zlec = mysqli_real_escape_string($connect, $_POST['nr_zlec']);
$klient2 = (''.klient_nazwa().'');
$nr_pobr = (''.date("Ymd").$klient.'');
$indeks = mysqli_real_escape_string($connect, $_POST['material']);
$ilosc = mysqli_real_escape_string($connect, $_POST['ilosc']);
$opis = mysqli_real_escape_string($connect, $_POST['opis']);
$uwagi_pobr = mysqli_real_escape_string($connect, $_POST['uwagi_pobr']);
if($indeks && $ilosc && $klient)
// 1 jeżeli wpisano jw i czy na stanie jest więcej lub tyle samo sztuk materiałów jak na pobraniu
{
$rekordy = mysqli_query($connect, "SELECT indeks, stan FROM magazyn WHERE indeks='$indeks' AND stan >= $ilosc LIMIT 1");
//2 jeżeli materialy istnieją w bazie w wystarczającej ilości
if(mysqli_num_rows($rekordy)==1)
// aktualizuje stan
{
mysqli_query($connect, "UPDATE magazyn SET stan=stan-$ilosc WHERE indeks='$indeks'");
// dodajemy rekord do tabeli pobrania
$ins = mysqli_query($connect, "INSERT INTO pobrania (data_pobr, nr_pobr, nr_zlec, klient, material, ilosc, opis, uwagi_pobr)
VALUES('$data_pobr','$nr_pobr','$nr_zlec','$klient2','$indeks','$ilosc','$opis','$uwagi_pobr')");
// zapisujemy zmienne sesyjne
$_SESSION['nr_zlec']=$nr_zlec;
$_SESSION['klient']=$klient;
$lista='';
$mail_info = mysqli_query($connect,"SELECT nr_pobr,material,ilosc,opis,uwagi_pobr FROM pobrania WHERE nr_pobr='$nr_pobr'");
if(mysqli_num_rows($mail_info) >= 1 && klient_mail() != '')
//3
{
while ($row=mysqli_fetch_assoc($mail_info))
$lista.='' .$row['material']. ' ' .$row['ilosc']. ' ' .$row['opis']. '<br>DPD: ' .$row['uwagi_pobr']. '';
return $lista;
$headers_1 = 'MIME-Version: 1.0' . '\r\n';
$headers_1 .= 'Content-type: text/html; charset=utf-8' . '\r\n';
$headers_1 .= 'From: <[email protected]>' . '\r\n';
$wiadomosc_1 = '<div style="font-size: 18px; font-family: arial, Helvetica, serif;">Witam<br><br>Wysyłamy do '.$klient2. ' części jak niżej:<br>' .$lista. '</div>';
//
$tytul = ''.$klient2.' - potwierdzenie wysyłki';
$mail_cust_1 = mail(klient_mail(), $tytul, $wiadomosc_1, $headers_1);
//4
if($ins) {
header('Location: http://' . $_SERVER['HTTP_HOST'] . '/wys.php');
echo "</body></html>";
//end4
}
else
//5
{
echo "<h2>Nie udało się dodać materiału.</h2>";
echo "<meta http-equiv=\"refresh\" content=\"4; URL=wys.php\">";
echo "</body></html>";
//end5
}
//3
} else
//6
{
echo "<h1>Brak maila w bazie.</h1>";
echo "</body></html>";
//end6
}
//end2
} else
//7
{
echo "<h1>Błąd - brak materiału w bazie.</h1>";
echo "</body></html>";
//end7
}
//end1
}
?>