我刚刚开始使用PHPStorm,我遇到了一个问题.
因此,当包含文件时,如果您在其中包含另一个文件,则路径未被正确理解.
例如文件夹结构:
root/ Contains index.php
view/ Contains view.php
lib/ Contains functions.php
Run Code Online (Sandbox Code Playgroud)
所以,如果我在index.php中包含view.php:
index.php:
include('view/view.php');
or
require('view/view.php');
Run Code Online (Sandbox Code Playgroud)
运行此代码时,view.php中的任何内容都包含在index.php中,因此view.php中包含的所有文件都相对于根目录.
view.php:
include('lib/functions.php');
Run Code Online (Sandbox Code Playgroud)
但PHPStorm认为它们与视图目录相关.
view.php:
include('../lib/functions.php');
Run Code Online (Sandbox Code Playgroud)
在这种情况下,他们不是.
这个问题也发生在以下问题上: <a href="index.php">Link</a>
如何配置PHPStorm来应对这种情况?我以为它会自动解决这个问题,但目前还没有.
具体例子:
private/
privatefile.php
public/
index.php
views/view1.php //Included in index.php
views/view2.php //Included in index.php
Run Code Online (Sandbox Code Playgroud)
如果我想在view1.php中包含privatefile.php,那么'public'会在这种情况下成为资源根吗?
所以view1.php中的include看起来像:include('../private/privatefile.php');
当元素按列排序时,它们沿着左列向下,然后向下向右.
如何配置flexbox以显示垂直向下而不是列中的元素?
例如,我想要底部配置,而不是顶部:
我flex-direction没有成功地调查过.这对Flexbox来说甚至可能吗?
我现在有这个:
#flex-container {
background-color: #000;
width: 100%;
-webkit-column-count: 2;
-moz-column-count: 2;
column-count: 2;
text-align: center;
}
.flex-element {
display: inline-block;
width: 100%;
-webkit-column-break-inside: avoid;
page-break-inside: avoid;
break-inside: avoid;
-webkit-column-gap: 10px;
margin-bottom: 10px;
background-color: #fff;
}Run Code Online (Sandbox Code Playgroud)
<div id="flex-container">
<div class="flex-element">
<p>1</p>
</div>
<div class="flex-element">
<p>2</p>
</div>
<div class="flex-element">
<p>3</p>
</div>
<div class="flex-element">
<p>4</p>
<p>--</p>
</div>
<div class="flex-element">
<p>5</p>
<p>--</p>
<p>--</p>
</div>
<div class="flex-element">
<p>6</p>
</div>
<div class="flex-element">
<p>7</p>
</div>
</div>Run Code Online (Sandbox Code Playgroud)
我有两个divs彼此相邻,我使用flex和justify-content/align-items垂直和水平居中.
示例HTML:
<div class="inner">
<div class="section green">
<img src="http://i.imgur.com/hEOMgVf.png">
</div>
<div class="section red">
<img src="http://i.imgur.com/nEybO1g.png">
</div>
</div>
Run Code Online (Sandbox Code Playgroud)
CSS:
.inner {
float: left;
width: 500px;
display: flex;
justify-content: center;
align-items: center;
background-color: #343434;
text-align: center;
}
.section {
float: left;
flex: 1;
}
.green { background-color: #7dc242; }
.red { background-color: #ed1c24; }
Run Code Online (Sandbox Code Playgroud)
我的问题是我需要将两个'section'div的高度设置为相同,并将它们垂直和水平居中.您可以在下面的JSFiddle中看到绿色背景与红色的高度不同.如何让两个div成为容器div的整个高度?
这是我所拥有的简化的JSFiddle:http: //jsfiddle.net/beK28/1/
我在页面上加载了动态内容,因此未指定数量的元素。我需要将它们均匀地分布在两列之间,所以我认为将它们的宽度设置为 50% 并将它们向左浮动就可以了。
<div class="element">
<p>My content goes here!</p>
</div>
.element{float:left;width:50%;}
Run Code Online (Sandbox Code Playgroud)
一个例子:https : //jsfiddle.net/fft75mu4/
但是在我的示例中的情况下,蓝色元素上方存在间隙,因为右侧元素比左侧第一个元素高。对此的推荐解决方案是什么?我假设这是一个普遍的问题?
我不想在 CSS 中创建实际的列,因为内容是动态的,元素可以非常高/短,所以在左侧放置 5 和在右侧放置 5 并不总是有效。
所以我试图在这个网站上实现这样的效果.
(在您可以将鼠标悬停在图像上方的底部附近,当您在图像上移动时它会显示另一个图像)
有任何想法吗?我的意思是我知道他们只是覆盖了这两个图像,但他们如何在悬停时使用CSS/Javascript显示远端图像?这超出了我的范围.我试过自己复制它没有成功.
好的,所以我遇到了这个使背景图像响应的解决方案:
响应式css背景图像
我很抱歉重新发布这个问题,但实际上他们的解决方案都没有对我有用.
HTML:
<div id="fourohfour_home"></div>
Run Code Online (Sandbox Code Playgroud)
CSS:
#fourohfour_home {
background-image:url('image.png');
height:120px;
width:120px;
}
Run Code Online (Sandbox Code Playgroud)
我究竟如何做出这种响应?例如,当页面的宽度小于图像的宽度时,它会正确缩放.
好的,所以我将日期存储为ddmmyy或dmmyy格式的int,前导0被截止,例如10914或100914
在某些条件下该值为0表示000000.
如何在不转换为字符串的情况下将其转换为DateTime(由于它可能为0)?是否有某种DateTime.Parse重载?
所以我想在每次点击表单“提交”输入时触发一个 Javascript 函数,这样我就可以在 Javascript 中处理提交。
我有以下几点:
$(':submit').click(function(){
var currentForm = $(this)[0].form;
event.preventDefault(); //Stop default form submission
var formData = new FormData(currentForm);
$.ajax({/*Handle form submission here*/});
});
Run Code Online (Sandbox Code Playgroud)
我尝试了一些不同的变体来获取 currentForm,但由于某种原因它总是未定义?
这不是获取form对象然后FormData在 Javascript 中将其转换为对象的正确方法吗?我已经尝试了几种关于如何获取输入的表单父级的解决方案?,但都没有工作。
有任何想法吗?
所以我有一个用于在网站上加载内容的ajax系统,它的工作原理如下:
单击按钮时,将调用Javascript函数:
onclick="doSomething('abc')"
Run Code Online (Sandbox Code Playgroud)
我的Javascript看起来像这样:
//Ajax
var xmlhttp;
function loadXMLDoc(url,cfunc) {
if (window.XMLHttpRequest) {
// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
} else {
// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=cfunc;
xmlhttp.open("GET",url,true);
xmlhttp.send();
}
function doSomething(var) {
loadXMLDoc("http://www.website.com/ajax/doSomething.php?var="+var, function() {
if (xmlhttp.readyState==4 && xmlhttp.status==200) {
document.getElementById("response-container").innerHTML=xmlhttp.responseText;
}
});
}
Run Code Online (Sandbox Code Playgroud)
PHP文件只调用echo的文本,如下所示:
echo "Response here";
Run Code Online (Sandbox Code Playgroud)
通常,每次运行此Javascript函数时,我都会使用此类型的系统在具有特定id的元素中加载新内容.
这已经完美地工作了3年多,但由于某种原因,Microsoft Edge正在缓解这一点的反应.因此内容根本没有正确生成.所以你运行一次,并且在x时间内它将继续返回相同的缓存响应.
有什么想法正确解决这个问题是什么?我已经看到提到使用标题,但我不确定如何在这种情况下应用修复.
好的,所以目前我处理PHP中的所有HTML表单提交.我将表单提交给PHP文件:
如果这些步骤中的任何一个失败,则用户将在PHP中重定向到他们来自的页面并显示错误消息.
我如何提交表格:
<form method="post" action="filename.php">
Run Code Online (Sandbox Code Playgroud)
该系统是故障安全的; 如果出现任何问题,即使禁用了Javascript,用户也会返回到他们来自的页面.
所以我的问题是; 我可以使用Ajax(在表单提交时向服务器发出Ajax请求)创建一个故障安全系统吗?所以我根本不需要这个PHP系统?是否有推荐的程序/教程?
我已经避免了这种情况,因为将PHP表单处理系统作为潜在黑客的故障保护系统以及Ajax的开销可能需要几个小时.
只是为了澄清,我不需要支持禁用Javascript的用户.我只是想确保我的系统在那种情况下是否安全无故障.我已经好好看了一下,但很难找到对此的澄清.
我想做一些非常简单的事情:
if (getStatus()) {
require_once('a.php');
} else {
require_once('b.php');
}
function getStatus() {
return true; //For the sake of this demo
}
Run Code Online (Sandbox Code Playgroud)
如何使用三元运算符重写?
我假设这样的事情:
getStatus() ? require_once('a.php') : require_once('b.php');
Run Code Online (Sandbox Code Playgroud)
但我无法弄清楚语法.我见过的所有例子都用它来做某事.例如x = y ? a : b;,但我不想以这种方式使用它.
我想做什么甚至可能吗?
更复杂:
这也可以用三元形式表达吗?
if (websiteIsLive()) {
setcookie("token", x, 0, '/', $_SERVER['HTTP_HOST'], true);
} else {
setcookie("token", y, 0, '/');
}
Run Code Online (Sandbox Code Playgroud)