更新若干bug
This commit is contained in:
+175
-10
@@ -1,5 +1,110 @@
|
||||
<?php
|
||||
// 引入 ThinkPHP 应用
|
||||
require_once __DIR__ . '/../../../vendor/autoload.php';
|
||||
|
||||
use think\facade\Db;
|
||||
use think\App;
|
||||
use app\model\Tenant\TenantDomain;
|
||||
use app\model\Tenant\Tenant;
|
||||
use app\model\Cms\Banner;
|
||||
use app\model\Cms\Articles;
|
||||
use app\model\Cms\ArticlesCategory;
|
||||
|
||||
// 初始化应用
|
||||
$app = new App(__DIR__ . '/../../../');
|
||||
$app->initialize();
|
||||
|
||||
// 获取当前域名
|
||||
$host = $_SERVER['HTTP_HOST'] ?? '';
|
||||
|
||||
// 查询域名对应的租户ID
|
||||
$tenantDomain = TenantDomain::where('full_domain', $host)
|
||||
->where('status', 1)
|
||||
->whereNull('delete_time')
|
||||
->find();
|
||||
|
||||
$tid = $tenantDomain ? (int)$tenantDomain['tid'] : 0;
|
||||
|
||||
// 获取 Banner 数据
|
||||
$banners = [];
|
||||
if ($tid > 0) {
|
||||
$banners = Banner::where('tid', $tid)
|
||||
->whereNull('delete_time')
|
||||
->order('sort', 'asc')
|
||||
->order('id', 'desc')
|
||||
->select()
|
||||
->toArray();
|
||||
|
||||
// 处理图片路径
|
||||
foreach ($banners as &$banner) {
|
||||
if (!empty($banner['image'])) {
|
||||
if (!preg_match('/^https?:\/\//', $banner['image'])) {
|
||||
$scheme = isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] === 'on' ? 'https' : 'http';
|
||||
$banner['image'] = $scheme . '://' . $host .
|
||||
(strpos($banner['image'], '/') === 0 ? '' : '/') . $banner['image'];
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// 获取新闻数据
|
||||
$articles = [];
|
||||
if ($tid > 0) {
|
||||
$articles = Articles::where('tid', $tid)
|
||||
->where('delete_time', null)
|
||||
->where('status', 2)
|
||||
->order('publish_date', 'desc')
|
||||
->limit(8)
|
||||
->select()
|
||||
->toArray();
|
||||
|
||||
// 处理图片:如果文章image为空,则取分类的image
|
||||
foreach ($articles as &$article) {
|
||||
if (empty($article['image']) && !empty($article['cate'])) {
|
||||
$category = ArticlesCategory::where('id', $article['cate'])
|
||||
->where('delete_time', null)
|
||||
->find();
|
||||
if ($category && !empty($category['image'])) {
|
||||
$article['image'] = $category['image'];
|
||||
}
|
||||
}
|
||||
// 处理图片路径
|
||||
if (!empty($article['image']) && !preg_match('/^https?:\/\//', $article['image'])) {
|
||||
$scheme = isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] === 'on' ? 'https' : 'http';
|
||||
$article['image'] = $scheme . '://' . $host .
|
||||
(strpos($article['image'], '/') === 0 ? '' : '/') . $article['image'];
|
||||
}
|
||||
if (!empty($article['thumb']) && !preg_match('/^https?:\/\//', $article['thumb'])) {
|
||||
$scheme = isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] === 'on' ? 'https' : 'http';
|
||||
$article['thumb'] = $scheme . '://' . $host .
|
||||
(strpos($article['thumb'], '/') === 0 ? '' : '/') . $article['thumb'];
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// 获取企业联系信息
|
||||
$companyInfo = [];
|
||||
if ($tid > 0) {
|
||||
$companyInfo = Tenant::where('id', $tid)
|
||||
->where('delete_time', null)
|
||||
->field('contact_phone, contact_email, address, worktime')
|
||||
->find();
|
||||
}else{
|
||||
$companyInfo = [
|
||||
'contact_phone' => '-',
|
||||
'contact_email' => '-',
|
||||
'address' => '-',
|
||||
'worktime' => '-'
|
||||
];
|
||||
}
|
||||
|
||||
// 辅助函数:去除 HTML 标签
|
||||
function stripHtml($html) {
|
||||
if (empty($html)) return '';
|
||||
$text = preg_replace('/<[^>]+>/', ' ', $html);
|
||||
$text = preg_replace('/\s+/', ' ', $text);
|
||||
return trim($text);
|
||||
}
|
||||
?>
|
||||
<!DOCTYPE html>
|
||||
<html class="no-js" lang="">
|
||||
@@ -221,11 +326,11 @@
|
||||
<div class="row">
|
||||
<div class="col-lg-8">
|
||||
<div class="contact-form-wrapper">
|
||||
<form action="" method="">
|
||||
<form id="requirementForm" action="" method="">
|
||||
<div class="row">
|
||||
<div class="col-md-6">
|
||||
<div class="single-input">
|
||||
<input type="text" id="name" name="name" class="form-input" placeholder="姓名">
|
||||
<input type="text" id="applicant" name="applicant" class="form-input" placeholder="姓名">
|
||||
<i class="lni lni-user"></i>
|
||||
</div>
|
||||
</div>
|
||||
@@ -237,67 +342,127 @@
|
||||
</div>
|
||||
<div class="col-md-6">
|
||||
<div class="single-input">
|
||||
<input type="text" id="number" name="number" class="form-input" placeholder="手机号">
|
||||
<input type="text" id="phone" name="phone" class="form-input" placeholder="手机号">
|
||||
<i class="lni lni-phone"></i>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-6">
|
||||
<div class="single-input">
|
||||
<input type="text" id="subject" name="subject" class="form-input" placeholder="您的标题">
|
||||
<input type="text" id="title" name="title" class="form-input" placeholder="您的标题" required>
|
||||
<i class="lni lni-text-format"></i>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-12">
|
||||
<div class="single-input">
|
||||
<textarea name="message" id="message" class="form-input" placeholder="您的需求" rows="6"></textarea>
|
||||
<textarea name="desc" id="desc" class="form-input" placeholder="您的需求" rows="6" required></textarea>
|
||||
<i class="lni lni-comments-alt"></i>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-12">
|
||||
<div class="form-button">
|
||||
<button type="submit" class="button"> <i class="lni lni-telegram-original"></i> 提交</button>
|
||||
<button type="submit" class="button" id="submitBtn"> <i class="lni lni-telegram-original"></i> 提交</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
<!-- 需求提交脚本 -->
|
||||
<script>
|
||||
document.getElementById('requirementForm').addEventListener('submit', function(e) {
|
||||
e.preventDefault();
|
||||
|
||||
const submitBtn = document.getElementById('submitBtn');
|
||||
submitBtn.disabled = true;
|
||||
submitBtn.innerHTML = '<i class="lni lni-spinner"></i> 提交中...';
|
||||
|
||||
const data = {
|
||||
title: document.getElementById('title').value,
|
||||
desc: document.getElementById('desc').value,
|
||||
applicant: document.getElementById('applicant').value,
|
||||
phone: document.getElementById('phone').value
|
||||
};
|
||||
|
||||
fetch('/index/requirement', {
|
||||
method: 'POST',
|
||||
headers: {
|
||||
'Content-Type': 'application/json'
|
||||
},
|
||||
body: JSON.stringify(data)
|
||||
})
|
||||
.then(res => res.json())
|
||||
.then(result => {
|
||||
if (result.code === 200) {
|
||||
alert('提交成功!我们会尽快与您联系。');
|
||||
document.getElementById('requirementForm').reset();
|
||||
} else {
|
||||
alert(result.msg || '提交失败,请稍后重试');
|
||||
}
|
||||
})
|
||||
.catch(err => {
|
||||
console.error('提交失败:', err);
|
||||
alert('提交失败,请稍后重试');
|
||||
})
|
||||
.finally(() => {
|
||||
submitBtn.disabled = false;
|
||||
submitBtn.innerHTML = '<i class="lni lni-telegram-original"></i> 提交';
|
||||
});
|
||||
});
|
||||
</script>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="col-lg-4">
|
||||
<div class="left-wrapper">
|
||||
<div class="row">
|
||||
<?php if (!empty($companyInfo['contact_phone'])): ?>
|
||||
<div class="col-lg-12 col-md-6">
|
||||
<div class="single-item">
|
||||
<div class="icon">
|
||||
<i class="lni lni-phone"></i>
|
||||
</div>
|
||||
<div class="text">
|
||||
<p>+86 19895983967</p>
|
||||
<p>+86 <?php echo htmlspecialchars($companyInfo['contact_phone']); ?></p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<?php endif; ?>
|
||||
<?php if (!empty($companyInfo['contact_email'])): ?>
|
||||
<div class="col-lg-12 col-md-6">
|
||||
<div class="single-item">
|
||||
<div class="icon">
|
||||
<i class="lni lni-envelope"></i>
|
||||
</div>
|
||||
<div class="text">
|
||||
<p>lygyunze@gmail.com</p>
|
||||
<p>357099073@qq.com</p>
|
||||
<p><?php echo htmlspecialchars($companyInfo['contact_email']); ?></p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<?php endif; ?>
|
||||
<?php if (!empty($companyInfo['address'])): ?>
|
||||
<div class="col-lg-12 col-md-6">
|
||||
<div class="single-item">
|
||||
<div class="icon">
|
||||
<i class="lni lni-map-marker"></i>
|
||||
</div>
|
||||
<div class="text">
|
||||
<p>江苏省连云港市海州区润潮国际大厦</p>
|
||||
<p><?php echo htmlspecialchars($companyInfo['address']); ?></p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<?php endif; ?>
|
||||
<?php if (!empty($companyInfo['worktime'])): ?>
|
||||
<div class="col-lg-12 col-md-6">
|
||||
<div class="single-item">
|
||||
<div class="icon">
|
||||
<i class="lni lni-timer"></i>
|
||||
</div>
|
||||
<div class="text">
|
||||
<p><?php echo htmlspecialchars($companyInfo['worktime']); ?></p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<?php endif; ?>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
Reference in New Issue
Block a user