小编Bv2*_*202的帖子

file_exists()返回false,但文件存在

我对file_exists()有一个非常奇怪的问题.我正在使用此功能来检查相同文件夹中是否存在2个不同的文件.我已经仔细检查了,他们确实存在.

echo $relative . $url['path'] . '/' . $path['filename'] . '.jpg';
Result: ../../images/example/001-001.jpg

echo $relative . $url['path'] . '/' . $path['filename'] . '.' . $path['extension'];
Result: ../../images/example/001-001.PNG
Run Code Online (Sandbox Code Playgroud)

现在让我们在这些上使用file_exists():

var_dump(file_exists($relative . $url['path'] . '/' . $path['filename'] . '.jpg'));
Result: bool(false)

var_dump(file_exists($relative . $url['path'] . '/' . $path['filename'] . '.' . $path['extension']));
Result: bool(true)
Run Code Online (Sandbox Code Playgroud)

我不明白 - 这两个文件都存在.我正在运行Windows,因此它与案例敏感问题无关.安全模式已关闭.

值得一提的是,.png文件是由用户通过FTP上传的,而.jpg文件是使用脚本创建的.但据我所知,这不应该有所作为.

有小费吗?

谢谢

php windows apache wamp

33
推荐指数
6
解决办法
5万
查看次数

创建Web服务时出现Eclipse Axis错误

每次我尝试在Eclipse中创建一个新的Web服务时,我都会收到此错误:

IWAB0489E Error when deploying Web service to Axis runtime
  axis-admin failed with  {http://xml.apache.org/axis/}HTTP (404)Not Found
Run Code Online (Sandbox Code Playgroud)

不知道如何解决这个问题?

谢谢

java eclipse axis web-services

19
推荐指数
2
解决办法
6万
查看次数

阻止访问某个文件夹中的文件

我有一个包含大量.php文件的文件夹.我想拒绝访问它们(使用.htaccess).我知道一个选项是将此文件夹移到外面public_html,但在这种情况下这是不可能的.

是否可以阻止访问整个文件夹?

apache .htaccess

16
推荐指数
4
解决办法
3万
查看次数

简单的PDO包装器

我的Web应用程序目前已执行简单的查询:简单的CRUD操作,计数,...

几个月前,有人建议我为此编写一个简单的PDO包装器(以避免每次执行查询时都编写try/catch,prepare(),execute()等).显示了这个示例方法(我做了一些更改,所以我可以在我自己的项目中使用它):

public function execute() {
    $args  = func_get_args();
    $query = array_shift($args);
    $result = false;

    try {
      $res = $this->pdo->prepare($query);
      $result = $res->execute($args);
    } catch (PDOException $e) { echo $e->getMessage(); }

    return $result;
  }
Run Code Online (Sandbox Code Playgroud)

因为我需要执行更多操作(执行查询,检索1条记录,检索多条记录,计算结果),我为所有这些创建了一个方法:

  public function getMultipleRecords() {
    $args  = func_get_args();
    $query = array_shift($args);
    $records = array();

    try {
      $res = $this->pdo->prepare($query);
      $res->execute($args);
      $records = $res->fetchAll();
    } catch (PDOException $e) { echo $e->getMessage(); }

    return $records;
  }

  public function getSingleRecord() {
    $args  = func_get_args();
    $query = array_shift($args);
    $record = …
Run Code Online (Sandbox Code Playgroud)

php database pdo wrapper

15
推荐指数
1
解决办法
1万
查看次数

没有抽象方法的抽象类

是否可以在不声明任何抽象方法的情况下在C++中创建类抽象?目前,我有一个带有StaticSprite和DynamicSprite子类的Sprite类.我想让Sprite类抽象化.

问题是他们没有共享任何方法.好吧,StaticSprite和DynamicSprite都可能共享一个draw()方法,但是这个方法的参数不同,所以这不是一个选项.

谢谢!

编辑:这是代码,以演示我正在尝试做什么:

雪碧:

class Sprite
{
    public:
        Sprite(HINSTANCE hAppInst, int imageID, int maskID);
        ~Sprite();

    protected:
        HINSTANCE hAppInst;
        HBITMAP hImage;
        HBITMAP hMask;
        BITMAP imageBM;
        BITMAP maskBM;
        HDC hSpriteDC;
};
Run Code Online (Sandbox Code Playgroud)

Staticsprite:

class StaticSprite : public Sprite
{
    public:
        StaticSprite(HINSTANCE hAppInst, int imageID, int maskID);
        ~StaticSprite();

        void draw(Position* pos, HDC hBackbufferDC);
};
Run Code Online (Sandbox Code Playgroud)

Dynamicsprite:

class DynamicSprite : public Sprite
{
    public:
        DynamicSprite(HINSTANCE hAppInst, int imageID, int maskID);
        ~DynamicSprite();

        void draw(HDC hBackbufferDC);
};
Run Code Online (Sandbox Code Playgroud)

如你所见,创建一个Sprite对象是没用的,所以我想把这个类抽象化.但我不能使draw()抽象,因为它使用不同的参数.

c++

10
推荐指数
2
解决办法
5680
查看次数

在SELECT语句中组合两个字段

在我的表中,我有一个字段"firstname"和一个字段"lastname".我想选择firstname + space + lastname为某个值的所有记录.

我试过这个:

$sql = "SELECT * FROM sam_users WHERE (user_firstname + ' ' + user_lastname LIKE ?)";
Run Code Online (Sandbox Code Playgroud)

但这不起作用.有了Google,我发现了一些关于使用||的东西,但我真的不明白我应该如何使用该运算符.请注意,我不想使用or-operator(什么是||在多种语言中),而是要连接2个字段(它们之间有空格)并在其上使用LIKE.

谢谢!

mysql sql

10
推荐指数
1
解决办法
4万
查看次数

mediaelement.js autoplay不适用于移动设备

我正在使用mediaelement.js来显示视频.我正在使用此代码:

<body>
<video id="player1" style="width: 100%; height: 100%;" preload="auto" autoplay="true" src="video.mp4"/>

<script>
    $('video').mediaelementplayer({
        features: ['playpause', 'progress', 'current', 'duration', 'tracks', 'volume', 'fullscreen'],
    });

    var player = new MediaElementPlayer('player1');
    player.play();
</script>
</body>
Run Code Online (Sandbox Code Playgroud)

当页面加载时,我想自动启动视频.这在桌面浏览器中工作正常,但在移动浏览器中,视频不会自动播放.

我究竟做错了什么?

javascript mediaelement.js

8
推荐指数
1
解决办法
1682
查看次数

会话令牌 - 它是如何工作的?

我想知道你如何才能最好地保护会话.我搜索了一下并找到了很多答案,但其中很多都太混乱了.

如何防止会话被劫持?我已经阅读了很多关于你在表单中生成的"会话令牌",但实际上并不了解它们的用途.这如何防止会话劫持?

我知道你不会在会话中保存像密码这样的东西,但是你可以安全地存储什么?权限(如会话变量,跟踪用户级别.每次打开页面时,会检查会话变量.这不是一定数量,您会收到"访问被拒绝"消息)?或者你如何处理这个最好的?

谢谢!

php

7
推荐指数
1
解决办法
1万
查看次数

undefined方法model_name

我正在使用脚手架创建的默认代码.我没有改变任何事情.

Showing app/views/presences/_form.html.erb where line #1 raised: 
undefined method `model_name' for NilClass:Class

1: <%= form_for(@presence) do |f| %>
2:   <% if @presence.errors.any? %>
3:     <div id="error_explanation">
4:       <h2><%= pluralize(@presence.errors.count, "error") %> prohibited this presence from being saved:</h2>
Run Code Online (Sandbox Code Playgroud)

这有什么不对?我永远不会调用名为"model_name"的方法,这段代码是自动化的,为什么它不起作用?

谢谢

ruby ruby-on-rails

7
推荐指数
2
解决办法
2万
查看次数

Java多人游戏 - 网络概念

对于一个学校项目,我们应该用Java创建一个多人游戏(它应该是客户端/服务器),可以通过互联网播放(我们在学校编程,所以这不是功课).游戏是回合制的,但应该有一个聊天,其中的一个是实时的.但是,我们都没有网络编程的经验,我读的越多,我似乎就越有问题.

我的第一个想法是使用套接字API来实现多人游戏部分.服务器等待来自客户端的新数据.但是,有多种数据需要接收,如聊天消息,移动等.此外,一旦与服务器建立连接,就应该发送一些初始数据(如播放器的名称).服务器应该能够看到它收到了什么样的消息,但是如何?我在考虑Message用字符串字段创建一个类type.但在我的服务器代码中,我会得到这样的代码:

if (message.type.equals("message")) {
  // code to execute for chat messages
} else if (message.type.equals("movement")) {
  // code to execute for movement
} else if () {
  // ...
} else {
  // ...
} // Please ignore syntax errors :P
Run Code Online (Sandbox Code Playgroud)

当有许多不同类型的数据要发送(并且会有)时,这看起来不是最有效的方式.此外,这意味着服务器和客户端都应具有此Message-class/interface(重复代码).

其他游戏的东西怎么样?例如,玩家1将他的角色移动到击败另一个角色的位置.玩家1的客户计算此失败并应用正确的动作.但应该发送什么到服务器?只是新的球员位置还是失败?使用第一个选项,这意味着所有其他客户端都应该进行计算.这不会导致任何麻烦吗?由于我没有先前的网络编程经验,我对如何做所有这些事情感到有点困惑.

我还在Stackoverflow上的另一个线程中读到RMI可能是更好的选择.阅读了一些有关这方面的信息,我明白了RMI是什么,但我仍然无法看到它是否是这个项目的好选择.有什么提示吗?

如你所见,我对如何开始这个项目的网络部分感到有点困惑.我搜索了一些游戏编程书籍(Java forcourse),但没有一本专注于网络部分.我也搜索过Java网络书籍,但这些书籍似乎都集中在技术上,而不是优秀的代码实践上.

如果有人知道一本好书或者在正确的情况下有一些建议,我们将不胜感激.

谢谢

java sockets networking rmi

7
推荐指数
1
解决办法
1万
查看次数