小编kel*_*nik的帖子

参数化语句可以停止所有SQL注入吗?

如果是,为什么还有那么多成功的SQL注入?仅仅因为一些开发人员太愚蠢而无法使用参数化语句?

sql exploit sql-injection code-injection

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

在JavaScript(.js)文件中包含PHP

我有一个包含多个JavaScript函数的JavaScript文件(扩展名.js,而不是.html).

我想调用PHP文件中的一个PHP函数,该文件只包含一个JavaScript函数中的几个PHP函数.

  • 那可能吗?
  • 我是否需要在.php文件中"包含" 包含PHP函数的.js文件?
  • 我该怎么办?
    例如,假设我有一个名为myLib.php的文件,其中包含一个带有myFunc两个参数(param1param2)的函数.然后我有一个.js包含一个名为的函数的文件myJsFunc.如何myFuncmyJsFunc(JavaScript函数)中调用(PHP )?我不需要在文件中以某种方式包含PHP .js文件吗?

javascript php

40
推荐指数
6
解决办法
18万
查看次数

如何在getter和setter中使用Enums?

所以我想要做的是:

写一个User类

用户:

  • 有一个用户名,例如'fj3'
  • 有一个userType,可以是:'user','editor'或'admin'
  • 有一个名字,例如'弗朗西斯'
  • 有一个构造函数,它将username,userType和name作为参数
  • 有一个getUsername()方法
  • 有一个getUserType()方法
  • 有一个getName()方法
  • 有一个setUserType()方法,它将一个用户类型作为参数

我的代码到目前为止:

public class User{

     public String id;
     public String userPermissions;
     public String actualName;

     public User(String username, String userType, String name){
         id = username;
         userPermissions = userType;
         actualName= name;
     }

    public String getUsername(){
        return id;
    }

    public String getUserType(){
        return userPermissions;
    }       

    public String getName(){
        return actualName;
    }

    public enum UserType{
       admin, editor, user;
    }

    public void setUserType(String input){
        userPermissions = input;
    }
}
Run Code Online (Sandbox Code Playgroud)

我需要做些什么才能让它发挥作用?我不知道如何制作它所以可以选择的唯一用户类型是管理员,编辑者或用户.

java enums

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

操作栏覆盖不按预期工作

我的Android应用程序有半透明效果ActionBar.当我触摸屏幕时隐藏它并在再次触摸屏幕时再次显示.

/value-11/styles.xml

<style name="FullscreenTheme" parent="android:Theme.Holo">
    <item name="android:actionBarStyle">@style/FullscreenActionBarStyle</item>
    <item name="android:windowActionBarOverlay">true</item>
    <item name="android:windowBackground">@null</item>
    <item name="buttonBarStyle">?android:attr/buttonBarStyle</item>
    <item name="buttonBarButtonStyle">?android:attr/buttonBarButtonStyle</item>
</style>

<style name="FullscreenActionBarStyle" parent="android:Widget.Holo.ActionBar">
    <item name="android:background">@color/black_overlay</item>
</style>
Run Code Online (Sandbox Code Playgroud)

当我启动应用程序时,它ActionBar是半透明的,这是预期的状态.当我隐藏它getActionBar().hide();并使用getActionBar().show();它再次显示时它不再是半透明的.

Fragment是ViewPager中的一个.如果我只是向右滚动,隐藏并显示预期的效果:被调用ActionBar后是半透明的show();.

更新:每次我向左滚动,错误就在那里.

有没有人知道如何解决这个问题,所以它也适用于第一页或用户向左滚动一个或多个?

android android-actionbar

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

Android Stock Browser是否支持WebSocket?

使用https://github.com/einaros/ws

服务器:

var WebSocketServer=require('ws').Server,wss=new WebSocketServer({port:8004});

wss.on('connection',function(s) {
    s.on('message',function(_){console.log('received: '+_);});
});
Run Code Online (Sandbox Code Playgroud)

客户:

var s=new WebSocket('ws://mysite.com:8004');
//android default browser dies here <---------------?       
s.onopen=function(){
    $('body').css({'background':'green'});
    s.send('hi');
    };
Run Code Online (Sandbox Code Playgroud)

我不得不问为什么android默认浏览器没有打开连接?

我在默认的android浏览器上访问www.websocket.org/echo.html,它说这个浏览器支持websocket.那有什么问题?

这个简单的代码适用于iphone safari,windows chrome,android mobile chrome没问题.

在android默认浏览器上我也可以用console.dir(window.WebSocket); 它显示WebSocket对象与其他浏览器没有什么不同.

如果有人知道原因,请告诉我.

谢谢


UPDATE

if (!window.WebSocket && window.MozWebSocket) {
    window.WebSocket = window.MozWebSocket;
    alert('MozWebSocket');
}
else if (!window.WebSocket) {
    alert("WebSocket not supported by this browser");
}
else{
    alert('wtf!? '+window.WebSocket);
}
Run Code Online (Sandbox Code Playgroud)

这给了我一个控制台日志:

wtf!? function WebSocket(){[native code]}
Run Code Online (Sandbox Code Playgroud)

javascript android websocket

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

在多行中管理CSS弹性框增长以创建相等块的网格

我正在寻找一种方法来创建同样大小的盒子flexbox同时使用flex-growth: 1.通过使用以下内容定义父项,这非常有用:

display: flex;
flex-flow: row-wrap;
Run Code Online (Sandbox Code Playgroud)

及其子女:

flex: 1 0 10rem;
Run Code Online (Sandbox Code Playgroud)

但是,与前一行中的框相比,LAST行将(取决于该行中的块数)具有不同的框宽度.有没有办法解决这个问题,同时仍然使用flex-grow?

HTML

<section>
    <div>aaaaaaaaaaaaaaaaaaaa</div>
    <div>bbbbbbbbbbbbbbbbbbbb</div>
    <div>cccccccccccccccccccc</div>
    <div>dddddddddddddddddddd</div>
    <div>eeeeeeeeeeeeeeeeeeee</div>
    <div>ffffffffffffffffffff</div>
    <div>gggggggggggggggggggg</div>
</section>
Run Code Online (Sandbox Code Playgroud)

CSS

section {
    display: flex;
    flex-flow: row wrap;
    background-color: blue;
    width: 700px;
}

div {
    background-color: red;
    height: 100px;
    flex: 1 0 200px;
}

div:nth-child(even) {
    background-color: green;
}
Run Code Online (Sandbox Code Playgroud)

请注意http://jsfiddle.net/C2q8D/3/中最后一行中的弹性项目大于上面的行(因为该行上的项目用于划分空间的数量较少).

css flexbox

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

外部(例如脸书)联系人在android上的照片

我写了一个短信应用程序,在概述中显示了我的联系人的联系人照片.

获得"正常"照片是没有问题的:

Uri cu = ContentUris.withAppendedId(Contacts.CONTENT_URI, contactId);
final InputStream input = Contacts.openContactPhotoInputStream(getContext().getContentResolver(), cu);
return BitmapFactory.decodeStream(input);
Run Code Online (Sandbox Code Playgroud)

问题是:例如facebook提供的联系人照片不存在,我怎样才能获得这些"外部"照片?

android android-contentresolver android-contacts

6
推荐指数
1
解决办法
358
查看次数

PHP中无状态Web应用程序中的持久性多节点事件

我正在构建一个将在多个节点上运行的OO PHP应用程序,并且本质上将是相对无状态的,我需要实现正确的发布者 - 订阅者(http://en.wikipedia.org/wiki/Observer_pattern/http:// sourcemaking.com/design_patterns/Observer/php)样式事件.

我的问题是,我该如何处理事件?

在我的应用程序中,我们使用的是Cassandra,Redis,Mongo和RabbitMQ等技术.

我知道PHP有一个事件EXTENSION可用,但从我可以告诉它坚持状态 - 或者如果利用memcached之类的东西它可以在该节点内使用...但我的应用程序将分布在多个节点上.

因此,让我们看一个示例:在节点1上,更新度量标准(度量标准ID 37),并且需要更新订阅该度量标准的任何内容.这会在更新时发布更改和更改.

我有一些订阅更新的度量标准ID 37,例如度量标准38,可能需要在度量标准37的值更改时重新计算.

度量标准38当前已实例化并在进程ID 1011中的节点2上使用...度量标准37如何告知节点2上的度量标准38(在这种情况下为进程ID 1011)以运行预订函数?

Metric 39订阅Metric 38正在更新,但未在任何地方实例化...当Metric 38完成更新时,Metric 39如何更新?

我正在考虑使用RabbitMQ作为我的事件队列管理器,并且在每个节点上都有一个守护进程样式的"事件使用者"应用程序,它读取事件队列中的事件(为了负载平衡/分配工作).

然后消费者看到"Metric:38:Updated"它会检查像Redis那样订阅"Metric:38:Updated"的内容并获取值("What:Function:Values")并执行类似call_user_func_array(array($ what)的操作,$函数),$值); ....但这似乎可能会导致开销和一定程度的同步问题...

我正在使用Doctrine MongoDB ODM来保存我的对象...为了处理同步问题我想到了这样的事情:对象可能有版本号...(版本= 1.0)并且redis可用于维护快速参考到对象的最新版本(ObjectVersion:ObjectType:ObjectId)= 1.1当在标记为@critical的对象属性(像isDeleted,货币余额等)上调用getter时,它可以检查实例的版本ID是否为等于redis中的版本#,如果需要,则从mongo更新其值...

另一种设置是使用amphp/amp(http://amphp.org/docs/amp/reactor-concepts.html)和某种形式的RPC来同步节点

因为我对网络开发(从c#转移)和无状态,并且分发...相当新.我认为向社区询问是否有人有更好的建议是个好主意?

php events distributed rabbitmq

5
推荐指数
1
解决办法
471
查看次数

PHP会话的一些问题

我在一个页面中设置会话变量,并在另一个页面中进行回显,但第二页中没有任何输出.

page1.php中

<?php 
    session_start();
    $_SESSION['id'] = 1;
    echo $_SESSION['id'];
    header("Location: page2.php"); //redirecting to page2.php
?>
Run Code Online (Sandbox Code Playgroud)

page1.php的输出

1
Run Code Online (Sandbox Code Playgroud)

使page2.php

<?php
    session_start();
    echo " $_SESSION['id']" ; 
?>
Run Code Online (Sandbox Code Playgroud)

page2.php的输出

 no output
Run Code Online (Sandbox Code Playgroud)

为什么会发生这种情况以及如何使page2.php中的输出为1?

php session

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

为什么一个单元格中元素的填充会影响另一个单元格?

我有两列布局.因为我们想要支持的所有浏览器都不支持flex布局,所以我使用display: tabledisplay: table-cell.

我目前的问题是,如果我修改顶部填充#sidebar > div > div,MAIN内容会受到影响,但不应该.所以有两个问题:

  • 为什么会MAIN受到#sidebar > div > div顶部填充变化的影响?
  • 我怎样才能实现它不受影响?

HTML

<div id="wrapper">
    <div id="sidebar">
        <div class="inner">
            <div>TEST</div>
            <div>TEST</div>
            <div>TEST</div>
            <div>TEST</div>
        </div>
    </div>
    <div id="content">
        <div class="inner">MAIN</div>
    </div>
</div>
Run Code Online (Sandbox Code Playgroud)

CSS

body {
    background: #ecf0f1;
    margin: 0;
    padding: 0;
    font-family: sans-serif;
}
*, *:before, *:after {
    box-sizing: border-box;
}
#wrapper {
    display: table;
}
#sidebar {
    display: table-cell;
    background: #2c3e50;
    color: #ecf0f1;
    width: 200px;
} …
Run Code Online (Sandbox Code Playgroud)

html css padding two-column-layout

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