标签: drupal

我可以在表单输入中放置关联数组以在PHP中处理吗?

我知道我可以做类似的事情<input name="foo[]">,但有可能做出类似的事情<input name="foo[bar]">并让它出现在PHP中$_POST['foo']['bar']吗?

我问的原因是因为我正在制作一个包含<select>多个表单元素的巨大表格(包括多个选项),并且我希望将我的数据清晰地组织在我正在发布的脚本中.我希望每列中的输入元素具有相同的基本名称,但是不同的行标识符作为数组键.那有意义吗?

编辑:我已经尝试过这个,但显然Drupal干扰了我正在尝试做的事情.我以为我的语法错了.萤火告诉我,我的名字输入构造完全一样,但我的数据回来为[foo[bar]] => data,而不是[foo] => array([bar] => data).

编辑2:似乎我的真正问题是我的假设,$form_state['values']在Drupal中将具有相同的数组层次结构$_POST.我永远不应该认为Drupal会那么合理和直观.我为浪费你的时间而道歉.你可以开展你的业务.

html php forms arrays drupal

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

直接从GitLab私有存储库打开文件

我在GitLab服务器上有一个私有存储库,使用SSH我可以使用git clone拉一个项目.

但我想直接从服务器上运行linux命令行上的脚本(更具体地说,Drupal/Drush .make文件)

我试图使用原始文件运行它:

drush make http://server.com/user/project/raw/master/file.make
Run Code Online (Sandbox Code Playgroud)

(为了方便非Drupal用户,让我们说)

curl http://server.com/user/project/raw/master/file.make
Run Code Online (Sandbox Code Playgroud)

没有成功.当然,它会返回登录页面.

可能吗?

linux git drupal drush gitlab

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

从Drupal 8中的链接字段中提取URL和标题?

我试图检索URL标题一个值链接字段的Drupal 8.

在我的自定义控制器中,我检索节点:

$storage = \Drupal::entityManager()->getStorage('node');
$nids = $storage->getQuery()
    ->condition('type', 'partners')
    ->condition('status', 1)
    ->execute();

$partners = $storage->loadMultiple($nids);
Run Code Online (Sandbox Code Playgroud)

当我循环遍历所有节点时,为了预处理变量,我将提供给我的视图,我想检索URL标题.

foreach ($partners as $key => $partner) {
    $variables['partners'][] = array(
        'image' => $partner->field_logo->entity->url(),
        'url'   => $partner->field_link->value, // Can't retrieve values of link field
    );
}
Run Code Online (Sandbox Code Playgroud)

不幸的是,我没有找到如何检索URL标题FIELD_LINK.

谢谢你的帮助.

php drupal drupal-8

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

如何使用drupal和drush的docker?

我想用drush.它需要在drupal容器中运行.还有一个潜水码头回购.但我不知道如何在drupal容器中使它可用.这是我的第一个docker和drupal项目,所以也许我的事情完全错了.

如何使用这个drupal docker图像进行drush? https://hub.docker.com/_/drupal/ 是否可以使用docker-compose进行管理?也许扩展drupal容器?

这是我的docker-compose.yml:

mysql:
  image: mysql:5.5
  ports:
    - "3306:3306"
  environment:
    - MYSQL_USER=xxxxx
    - MYSQL_PASSWORD=xxxxxx
    - MYSQL_ROOT_PASSWORD=xxxxxx
    - MYSQL_DATABASE=xxxxxx

drupal:
  image: drupal:8.0.4
  links:
    - mysql
  ports:
    - "8080:80"
Run Code Online (Sandbox Code Playgroud)

drupal drush drupal-8 docker docker-compose

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

脚本运行时的php垃圾回收

我有一个在cron上运行的PHP脚本,可能需要15分钟才能执行.我定期吐出memory_get_usage()所以我可以看到发生了什么.它第一次告诉我我的用法我是10兆.当脚本完成时,我的速度为114兆!

PHP是否在脚本运行时执行垃圾收集?或者那些记忆发生了什么?有什么我可以做的强制垃圾收集.我的脚本正在执行的任务是每晚将几千个节点导入Drupal.所以很多时候它也在做同样的事情.

有什么建议?

php performance garbage-collection drupal

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

16
推荐指数
2
解决办法
4188
查看次数

"无法发送电子邮件.请联系网站管理员"

我在admin/user/user中收到以下错误消息:

无法发送电子邮件.如果问题仍然存在,请与网站管理员联系.

这个错误是由于我的服务器上没有安装电子邮件服务吗?谢谢

更新:我现在收到以下错误.

发送电子邮件时出错(从"网站名称"发送到email@gmail.com).尝试发送电子邮件email@gmail.com有关订单114失败.

drupal drupal-6

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

如何更改页脚由Drupal及其链接提供支持?

我正在研究Drupal.我想知道如何更改由Drupal提供的页脚文本以及给它的链接.我想要"Copyrights 2012(我的网站名称).保留所有权利." 我无法得到任何人可以帮助我.

drupal drupal-7 drupal-modules

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

XAMPP/MySQL:重启MySQL后无法打开单表表空间文件.\ mysql\innodb_index_stats.ibd

我在我的本地XAMPP服务器上安装了Drupal.它工作得很好,包括和使用数据库/站点没有问题,直到我重新启动XAMPP.从那时起,我在我的日志文件中获得以下内容:

2013-09-02 16:18:46 2544 [注意]插件'FEDERATED'被禁用.

2013-09-02 16:18:46 3e8 InnoDB:警告:使用innodb_additional_mem_pool_size已弃用.在将来的版本中可以删除此选项,以及选项innodb_use_sys_malloc和InnoDB的内部内存分配器.

2013-09-02 16:18:46 2544 [注意] InnoDB:禁用InnoDB内存堆

2013-09-02 16:18:46 2544 [注意] InnoDB:Mutexes和rw_locks使用Windows互锁功能

2013-09-02 16:18:46 2544 [注意] InnoDB:压缩表使用zlib 1.2.3

2013-09-02 16:18:46 2544 [注意] InnoDB:不使用CPU crc32指令

2013-09-02 16:18:46 2544 [注意] InnoDB:初始化缓冲池,大小= 16.0M

2013-09-02 16:18:46 2544 [注意] InnoDB:完成缓冲池的初始化

2013-09-02 16:18:46 2544 [注意] InnoDB:最高支持的文件格式是Barracuda.

2013年9月2日十六点18分47秒2544 [注] InnoDB的:日志序列号1600614和ibdata文件1600614不匹配的ib_logfiles日志序列号1600644!

2013-09-02 16:18:47 2544 [注意] InnoDB:数据库没有正常关机!

2013-09-02 16:18:47 2544 [注意] InnoDB:开始崩溃恢复.

2013-09-02 16:18:47 2544 [注意] InnoDB:从.ibd文件中读取表空间信息...

2013-09-02 16:18:47 2544 [错误] InnoDB:尝试打开以前打开的表空间.以前的表空间drupal/variable在文件路径中使用空格ID:2:.\ drupal\variable.ibd.无法在文件路径中打开使用空格ID:2的表空间mysql/innodb_index_stats:.\ mysql\innodb_index_stats.ibd

InnoDB:错误:无法打开单表表空间文件.\ mysql\innodb_index_stats.ibd

InnoDB:我们不会继续崩溃恢复,因为表可能会变成

InnoDB:如果我们无法将InnoDB日志中的日志记录应用于它,则会损坏.

InnoDB:解决问题并启动mysqld:

InnoDB:1)如果文件中存在权限问题而mysqld不能

InnoDB:打开文件,你应该修改权限.

InnoDB:2)如果不需要表,或者您可以从备份中恢复它, …

php mysql database xampp drupal

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

我如何解决这个"无法读取属性'appendChild'的null"错误?

我尝试使用下面的代码,在我的网站上添加幻灯片中的按钮:

window.onload = function loadContIcons() {
    var elem = document.createElement("img");
    elem.src = "http://arno.agnian.com/sites/all/themes/agnian/images/up.png";
    elem.setAttribute("class", "up_icon");

    var id = "views_slideshow_controls_text_next_slideshow-block";
    if (id !== 0) {
        document.getElementById(id).appendChild(elem);
    } else console.log("aaaaa");

    var elem1 = document.createElement("img");
    elem1.src = "http://arno.agnian.com/sites/all/themes/agnian/images/down.png";
    elem1.setAttribute("class", "down_icon");

    var id1 = "views_slideshow_controls_text_previous_slideshow-block";
    if (id1 !== 0) {
        document.getElementById(id1).appendChild(elem1);
    } else console.log("aaaaa");
}
Run Code Online (Sandbox Code Playgroud)

在首页上,我有幻灯片显示一切正常,但在其他页面上Cannot read property 'appendChild' of null发生错误.

javascript jquery drupal

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