生成3个字符和10个随机字符

时间:2019-02-27 16:57:37

标签: javascript php html mysql database

我有一个表单,其中有一个名为trackingcode的字段,它会生成10个随机字符,我想有一个特殊字符,然后是10个随机字符。例如,TS-(10 random string)

这是我尝试过的:

 $trackingcode = substr(str_shuffle(TS-"0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"), 0, $length);

我的问题是我不确定在哪里添加特殊字符。这是我的插入代码:

<?php
    //insert.php
    $connect = mysqli_connect("localhost", "root", "", "pcrequest");
    if(isset($_POST["reqname"]))
    {
     $length = 10;
     $trackingcode = substr(str_shuffle("0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"), 0, $length);
     $req_date = $_POST["req_date"];
     $reqname = $_POST["reqname"];
     $date = $_POST["date"];
     $empname = $_POST["empname"];
     $position = $_POST["position"];
     $account = $_POST["account"];
     $platform = $_POST["platform"];
     $processor = $_POST["processor"];
     $ram = $_POST["ram"];
     $monitor = $_POST["monitor"];
     $phone = $_POST["phone"];
     $phonetype = $_POST["phonetype"];
     $headset = $_POST["headset"];
     $req_table = $_POST["req_table"];
     $req_chair = $_POST["req_chair"];
     $approval = $_POST["approval"];
     $status = $_POST["status"];
     $query = '';


      for($count = 0; $count<count($reqname); $count++)
      {
      $req_date_clean = mysqli_real_escape_string($connect, $req_date[$count]);
      $reqname_clean = mysqli_real_escape_string($connect, $reqname[$count]);
      $date_clean = mysqli_real_escape_string($connect, $date[$count]);
      $empname_clean = mysqli_real_escape_string($connect, $empname[$count]);
      $position_clean = mysqli_real_escape_string($connect, $position[$count]);
      $account_clean = mysqli_real_escape_string($connect, $account[$count]);
      $platform_clean = mysqli_real_escape_string($connect, $platform[$count]);
      $processor_clean = mysqli_real_escape_string($connect, $processor[$count]);
      $ram_clean = mysqli_real_escape_string($connect, $ram[$count]);
      $monitor_clean = mysqli_real_escape_string($connect, $monitor[$count]);
      $phone_clean = mysqli_real_escape_string($connect, $phone[$count]);
      $phonetype_clean = mysqli_real_escape_string($connect, $phonetype[$count]);
      $headset_clean = mysqli_real_escape_string($connect, $headset[$count]);
      $req_table_clean = mysqli_real_escape_string($connect, $req_table[$count]);
      $req_chair_clean = mysqli_real_escape_string($connect, $req_chair[$count]);
      $approval_clean = mysqli_real_escape_string($connect, $approval[$count]);
      $status_clean = mysqli_real_escape_string($connect, $status[$count]);
      if($req_date_clean != '' && $reqname_clean != '' && $date_clean != '' && $empname_clean != '' && $position_clean != '' && $account_clean != '' && $platform_clean != '' && $processor_clean != '' && $ram_clean != '' && $monitor_clean != '' && $phone_clean != '' && $phonetype_clean != '' && $headset_clean != '' && $req_table_clean != '' && $req_chair_clean != '' && $approval_clean != '' && $status_clean != '')
      {
       $query .= '
       INSERT INTO request(trackingcode, req_date, reqname, date, empname, position, account, platform, processor, ram, monitor, phone, phonetype, headset, req_table, req_chair, approval, status) 
       VALUES("'.$trackingcode.'", "'.$req_date_clean.'", "'.$reqname_clean.'", "'.$date_clean.'", "'.$empname_clean.'", "'.$position_clean.'", "'.$account_clean.'", "'.$platform_clean.'", "'.$processor_clean.'", "'.$ram_clean.'", "'.$monitor_clean.'", "'.$phone_clean.'", "'.$phonetype_clean.'", "'.$headset_clean.'", "'.$req_table_clean.'", "'.$req_chair_clean.'", "'.$approval_clean.'", "'.$status_clean.'"); 
       ';
      }

1 个答案:

答案 0 :(得分:2)

只需将其添加到您创建的随机字符串的开头即可。

$trackingcode = 'TS-' . substr(str_shuffle("0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"), 0, $length);